home *** CD-ROM | disk | FTP | other *** search
/ Aminet 37 / Aminet 37 (2000)(Schatztruhe)[!][Jun 2000].iso / Aminet / dev / lang / sofa.lha / sofa / smalleiffel / bin_c / compile_to_c16.c < prev    next >
C/C++ Source or Header  |  2000-03-25  |  113KB  |  4,683 lines

  1. /*
  2. -- ANSI C code generated by :
  3. -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.76Beta#1)--
  4. -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
  5. -- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
  6. --                  http://SmallEiffel.loria.fr/                --
  7. */
  8. #include "compile_to_c.h"
  9.  
  10.  
  11. void r249warning(T68 a1,T0* a2){
  12. r66add_position(a1);
  13. /*[IRF3.6append*/{T0* b1=a2;
  14. r7append((T7*)(oBC66explanation),b1);
  15. }/*]*/
  16. r66print_as_warning((T66*)(oBC13eh));
  17. }
  18.  
  19.  
  20. void r249c2c_clear_expanded(T249* C,T2 a1){
  21. X104compile_to_c((/*RF2*/(C)->_writable/*12*/));
  22. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  23. T3 b1=((T3)'\75');
  24. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  25. }/*]*/
  26. /*]*/
  27. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  28. T3 b1=((T3)'M');
  29. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  30. }/*]*/
  31. /*]*/
  32. /*[IRF3.5put_integer*/r48put_integer(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),a1);
  33. /*]*/
  34. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms14_138));
  35. /*]*/
  36. }
  37.  
  38.  
  39. void r249c2c_closing(T249* C,T0* a1){
  40. T0* _once_result=NULL;
  41. _once_result=(/*RF2*/(C)->_writable/*12*/);
  42. if(NULL!=(_once_result)){
  43. switch(((T0*)_once_result)->id){
  44. case 145:
  45. break;
  46. default:
  47. _once_result=NULL;
  48. }
  49. }/*[IF*/
  50. if((_once_result)==((void*)(NULL))){
  51. X104compile_to_c((/*RF2*/(C)->_writable/*12*/));
  52. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms248_4213));
  53. /*]*/
  54. }
  55. /*FI]*/
  56. /*[IF*/
  57. if(r325call_invariant_start(a1)){
  58. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  59. T3 b1=((T3)'n');
  60. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  61. }/*]*/
  62. /*]*/
  63. /*[IRF3.2call_invariant_end*//*[IRF3.6put_character*/{T48* C1=(T48*)(oBC325out_c);
  64. T3 b1=((T3)'\51');
  65. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  66. }/*]*/
  67. /*]*/
  68. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  69. T3 b1=((T3)'\73');
  70. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  71. }/*]*/
  72. /*]*/
  73. }
  74. /*FI]*/
  75. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  76. T3 b1=((T3)'\175');
  77. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  78. }/*]*/
  79. /*]*/
  80. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  81. T3 b1=((T3)'\n');
  82. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  83. }/*]*/
  84. /*]*/
  85. }
  86.  
  87.  
  88. T0* r249add_comment(T249* C,T0* a1){
  89. T0* R=NULL;
  90. /*[IF*/
  91. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  92. R=((T0*)(C));
  93. }
  94. /*AF*/else{
  95. {T224*n=((T224*)malloc(sizeof(*n))/*12*/);
  96. *n=M224;
  97. r224make(n,(T0*)C,a1);
  98. R=((T0*)n);
  99. }
  100. }
  101. /*FI]*/
  102. return R;
  103. }
  104.  
  105.  
  106. void r249check_created_type(T249* C,T0* a1){
  107. T0* _rt=NULL;
  108. _rt=X52run_type(a1);
  109. /*[IF*/
  110. if((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/)){
  111. }
  112.  else if((/*RF2*/((T51*)(X52base_class(_rt)))->_is_deferred/*16*/)){
  113. r66add_type(_rt,((T0*)ms248_11648));
  114. r249warning((/*RF2*/(C)->_start_position/*4*/),((T0*)ms248_30681));
  115. }
  116. /*FI]*/
  117. /*[IF*/
  118. if(X52is_formal_generic(a1)){
  119. r66add_position((/*RF2*/(C)->_start_position/*4*/));
  120. /*[IRF3.6append*/{T0* b1=((T0*)ms248_76570);
  121. r7append((T7*)(oBC66explanation),b1);
  122. }/*]*/
  123. r66add_type(a1,((T0*)ms248_174));
  124. r66print_as_fatal_error((T66*)(oBC13eh));
  125. }
  126. /*FI]*/
  127. r50set_at_run_time((T50*)(X52run_class(_rt)));
  128. }
  129.  
  130.  
  131. void r249compile_to_c(T249* C){
  132. /*[IF*/
  133. if(X52is_reference((/*RF2*/(C)->_type/*20*/))){
  134. r249c2c_opening(C,(/*RF2*/(C)->_type/*20*/));
  135. r249c2c_closing(C,(/*RF2*/(C)->_type/*20*/));
  136. }
  137. else{
  138. r249c2c_clear_expanded(C,X52id((/*RF2*/(C)->_type/*20*/)));
  139. }
  140. /*FI]*/
  141. }
  142.  
  143.  
  144. void r249check_creation_clause(T249* C,T0* a1){
  145. /*[IF*/
  146. if(/*(IRF4.7has_creation_clause*/((/*RF2*/((T51*)(X52base_class(a1)))->_creation_clause_list/*38*/))!=(NULL)/*)*/){
  147. /*[IRF3.6append*/{T0* b1=((T0*)ms247_36693);
  148. r7append((T7*)(oBC66explanation),b1);
  149. }/*]*/
  150. r66add_type(a1,((T0*)ms247_156));
  151. r249error((/*RF2*/(C)->_start_position/*4*/),((T0*)ms247_45900));
  152. }
  153. /*FI]*/
  154. }
  155.  
  156.  
  157. void r249check_writable(T249* C,T0* a1){
  158. T0* _w=NULL;
  159. (/*SFN*/C->_current_type)=a1;
  160. _w=X104to_runnable((/*RF2*/(C)->_writable/*12*/),a1);
  161. /*[IF*/
  162. if((_w)==((void*)(NULL))){
  163. {T68 se_tmp0;
  164. r66add_position((*(se_tmp0=X104start_position((/*RF2*/(C)->_writable/*12*/)),&se_tmp0)));
  165. }
  166. r249fatal_error(((T0*)ms248_63756));
  167. }
  168. else{
  169. (/*SFN*/C->_writable)=_w;
  170. }
  171. /*FI]*/
  172. }
  173.  
  174.  
  175. T6 r249use_current(T249* C){
  176. T6 R=0;
  177. R=X104use_current((/*RF2*/(C)->_writable/*12*/));
  178. return R;
  179. }
  180.  
  181.  
  182. T6 r249stupid_switch(T249* C,T0* a1){
  183. T6 R=0;
  184. T0* _t=NULL;
  185. /*[IF*/
  186. if(((/*RF2*/(C)->_type/*20*/))!=((void*)(NULL))){
  187. _t=(/*RF2*/(C)->_type/*20*/);
  188. }
  189. else{
  190. _t=X104result_type((/*RF2*/(C)->_writable/*12*/));
  191. }
  192. /*FI]*/
  193. /*[IF*/
  194. if(X52is_anchored(_t)){
  195. }
  196.  else if(X52is_generic(_t)){
  197. }
  198. else{
  199. /*[IF*/
  200. {/*AT*/R=X104stupid_switch((/*RF2*/(C)->_writable/*12*/),a1);
  201. }
  202. /*FI]*/
  203. }
  204. /*FI]*/
  205. return R;
  206. }
  207.  
  208.  
  209. T0* r249to_runnable(T249* C,T0* a1){
  210. T0* R=NULL;
  211. /*[IF*/
  212. if(((/*RF2*/(C)->_current_type/*16*/))==((void*)(NULL))){
  213. r249check_writable(C,a1);
  214. r249check_explicit_type(C);
  215. r249check_created_type(C,(/*RF2*/(C)->_type/*20*/));
  216. r249check_creation_clause(C,(/*RF2*/(C)->_type/*20*/));
  217. R=((T0*)(C));
  218. }
  219. else{
  220. {T249*n=((T249*)malloc(sizeof(*n))/*24*/);
  221. *n=M249;
  222. r249make(n,(/*RF2*/(C)->_start_position/*4*/),(/*RF2*/(C)->_type/*20*/),(/*RF2*/(C)->_writable/*12*/));
  223. R=((T0*)n);
  224. }
  225. R=r249to_runnable(((T249*)R),a1);
  226. }
  227. /*FI]*/
  228. return R;
  229. }
  230.  
  231.  
  232. void r249check_explicit_type(T249* C){
  233. T0* _t=NULL;
  234. T0* _ct=NULL;
  235. _ct=/*SSWARF2*//*X334current_type*/(/*RF2*/((T368*)(r49top_rf((T49*)(oBC13small_eiffel))))->_current_type/*8*/);
  236. _t=X52to_runnable((/*RF2*/(C)->_type/*20*/),_ct);
  237. /*[IF*/
  238. if(((_t)==((void*)(NULL)))||(!(X52is_run_type(_t)))){
  239. {T68 se_tmp0;
  240. r66add_position((*(se_tmp0=X52start_position((/*RF2*/(C)->_type/*20*/)),&se_tmp0)));
  241. }
  242. r249fatal_error(((T0*)ms250_33396));
  243. }
  244. else{
  245. (/*SFN*/C->_type)=_t;
  246. }
  247. /*FI]*/
  248. /*[IF*/
  249. if(!(X52is_a((/*RF2*/(C)->_type/*20*/),X104result_type((/*RF2*/(C)->_writable/*12*/))))){
  250. r249fatal_error(((T0*)ms250_34344));
  251. }
  252. /*FI]*/
  253. }
  254.  
  255.  
  256. void r249c2c_opening(T249* C,T0* a1){
  257. T0* _once_result=NULL;
  258. T0* _rc=NULL;
  259. _rc=X52run_class(a1);
  260. r325se_trace_ins((T325*)(oBC13cpp),(/*RF2*/(C)->_start_position/*4*/));
  261. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  262. T3 b1=((T3)'\173');
  263. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  264. }/*]*/
  265. /*]*/
  266. r344allocation((T344*)(oBC13gc_handler),_rc);
  267. r325expanded_attributes((T325*)(oBC13cpp),a1);
  268. _once_result=(/*RF2*/(C)->_writable/*12*/);
  269. if(NULL!=(_once_result)){
  270. switch(((T0*)_once_result)->id){
  271. case 145:
  272. break;
  273. default:
  274. _once_result=NULL;
  275. }
  276. }/*[IF*/
  277. if((_once_result)!=((void*)(NULL))){
  278. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),r145c_variable_name(((T145*)_once_result)));
  279. /*]*/
  280. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms248_4213a));
  281. /*]*/
  282. }
  283. /*FI]*/
  284. }
  285.  
  286.  
  287. T6 r249is_pre_computable(T249* C){
  288. T6 R=0;
  289. R=X104is_result((/*RF2*/(C)->_writable/*12*/));
  290. return R;
  291. }
  292.  
  293.  
  294. void r249error(T68 a1,T0* a2){
  295. r66add_position(a1);
  296. /*[IRF3.6append*/{T0* b1=a2;
  297. r7append((T7*)(oBC66explanation),b1);
  298. }/*]*/
  299. r66print_as_error((T66*)(oBC13eh));
  300. }
  301.  
  302.  
  303. T6 r61is_subclass_of(T61* C,T0* a1){
  304. T6 R=0;
  305. /*[IF*/
  306. if((((T0*)ms15_1216))==((void*)((/*RF2*/(C)->_to_string/*8*/)))){
  307. R=1;
  308. }
  309.  else if((((T0*)ms15_696))==((void*)((/*RF2*/(((T61*)a1))->_to_string/*8*/)))){
  310. R=1;
  311. }
  312.  else if((((T0*)ms15_1216))==((void*)((/*RF2*/(((T61*)a1))->_to_string/*8*/)))){
  313. }
  314. else{
  315. R=r51is_subclass_of((T51*)(r61base_class(C)),r61base_class(((T61*)a1)));
  316. }
  317. /*FI]*/
  318. return R;
  319. }
  320.  
  321.  
  322. void r61make(T61* C,T0* a1,T68 a2){
  323. (/*SFN*/C->_to_string)=a1;
  324. (/*SFN*/C->_start_position)=a2;
  325. }
  326.  
  327.  
  328. T0* r61base_class(T61* C){
  329. T0* R=NULL;
  330. R=r49base_class((T49*)(oBC13small_eiffel),(T0*)C);
  331. return R;
  332. }
  333.  
  334.  
  335. T0* r269generic_list(T269* C){
  336. T0* R=NULL;
  337. r269fatal_error_generic_list(C);
  338. return R;
  339. }
  340.  
  341.  
  342. void r269gc_call_new_in(T0* a1){
  343. r7append(((T7*)a1),((T0*)ms14_990));
  344. r2append_in(8,a1);
  345. r7extend(((T7*)a1),((T3)'\50'));
  346. r7extend(((T7*)a1),((T3)'\51'));
  347. }
  348.  
  349.  
  350. T0* r269base_class(T269* C){
  351. T0* R=NULL;
  352. T0* _bcn=NULL;
  353. _bcn=(/*RF2*/(C)->_base_class_name/*4*/);
  354. /*[IF*/
  355. if((_bcn)!=((void*)(NULL))){
  356. R=r61base_class(((T61*)_bcn));
  357. }
  358. else{
  359. /*[IRF3.6append*/{T0* b1=((T0*)ms52_36693);
  360. r7append((T7*)(oBC66explanation),b1);
  361. }/*]*/
  362. r66add_type((T0*)C,((T0*)ms14_46));
  363. r66print_as_fatal_error((T66*)(oBC13eh));
  364. }
  365. /*FI]*/
  366. return R;
  367. }
  368.  
  369.  
  370. T0* r269look_up_for(T269* C,T0* a1,T0* a2){
  371. T0* R=NULL;
  372. R=r51look_up_for((T51*)(r269base_class(C)),a1,a2);
  373. return R;
  374. }
  375.  
  376.  
  377. T6 r269has_creation(T269* C,T0* a1){
  378. T6 R=0;
  379. {T68 se_tmp0;
  380. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  381. }
  382. r269error(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/(C)->_base_class_name/*4*/))))->_start_position/*0*/)/*)*/,((T0*)ms264_99414));
  383. return R;
  384. }
  385.  
  386.  
  387. void r269error(T68 a1,T0* a2){
  388. r66add_position(a1);
  389. /*[IRF3.6append*/{T0* b1=a2;
  390. r7append((T7*)(oBC66explanation),b1);
  391. }/*]*/
  392. r66print_as_error((T66*)(oBC13eh));
  393. }
  394.  
  395.  
  396. T0* r269actual_reference(T0* a1){
  397. T0* R=NULL;
  398. T0* _cn=NULL;
  399. /*[IF*/
  400. if((X52run_time_mark(a1))==((void*)(((T0*)ms15_12804)))){
  401. R=a1;
  402. }
  403. else{
  404. {T68 se_tmp0;
  405. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  406. *n=M61;
  407. r61make(n,((T0*)ms15_12804),(*(se_tmp0=X52start_position(a1),&se_tmp0)));
  408. _cn=((T0*)n);
  409. }
  410. }
  411. {T272*n=((T272*)malloc(sizeof(*n))/*8*/);
  412. *n=M272;
  413. /*[IRF3.3make*/((((T272*)(n)))->_base_class_name)=(_cn);
  414. /*]*/
  415. R=((T0*)n);
  416. }
  417. }
  418. /*FI]*/
  419. return R;
  420. }
  421.  
  422.  
  423. T6 r269is_a_in(T269* C,T0* a1,T0* a2){
  424. T6 R=0;
  425. T0* _ct=NULL;
  426. T0* _t2=NULL;
  427. T0* _t1=NULL;
  428. /*[IF*/
  429. if((r269written_mark())==((void*)(X52written_mark(a1)))){
  430. R=1;
  431. }
  432. else{
  433. _ct=(/*RF2*/(((T50*)a2))->_current_type/*0*/);
  434. _t1=r269to_runnable(C,_ct);
  435. _t2=X52to_runnable(a1,_ct);
  436. /*[IF*/
  437. if((X52run_time_mark(_t1))==((void*)(X52run_time_mark(_t2)))){
  438. R=1;
  439. }
  440. else{
  441. R=X52is_a(_t1,_t2);
  442. }
  443. /*FI]*/
  444. }
  445. /*FI]*/
  446. return R;
  447. }
  448.  
  449.  
  450. T6 r269is_native_array(T269* C){
  451. T6 R=0;
  452. T0* _tna=NULL;
  453. _tna=NULL;
  454. R=(_tna)!=((void*)(NULL));
  455. return R;
  456. }
  457.  
  458.  
  459. T6 r269is_a(T269* C,T0* a1){
  460. T6 R=0;
  461. /*[IF*/
  462. if(X52is_pointer(a1)){
  463. R=1;
  464. }
  465. else{
  466. R=r51is_subclass_of((T51*)(r269base_class(C)),X52base_class(a1));
  467. }
  468. /*FI]*/
  469. /*[IF*/
  470. if(!(R)){
  471. r66add_type((T0*)C,((T0*)ms269_23751));
  472. r66add_type(a1,((T0*)ms14_46));
  473. }
  474. /*FI]*/
  475. return R;
  476. }
  477.  
  478.  
  479. void r269make(T269* C,T68 a1){
  480. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  481. *n=M61;
  482. r61make(n,((T0*)ms15_6776),a1);
  483. (/*SFN*/C->_base_class_name)=((T0*)n);
  484. }
  485. }
  486.  
  487.  
  488. T2 r269c_sizeof_pointer(void){
  489. T2 R=0;
  490. T8 _p=NULL;
  491. R=sizeof(T8);
  492. return R;
  493. }
  494.  
  495.  
  496. void r269fatal_error_generic_list(T269* C){
  497. r66add_type((T0*)C,((T0*)ms52_28899));
  498. r66print_as_fatal_error((T66*)(oBC13eh));
  499. }
  500.  
  501.  
  502. void r269c_initialize_in(T0* a1){
  503. /*[IF*/
  504. {/*AT*/r7append(((T7*)a1),((T0*)ms14_1260));
  505. }
  506. /*FI]*/
  507. }
  508.  
  509.  
  510. T0* r269smallest_ancestor(T269* C,T0* a1){
  511. T0* R=NULL;
  512. T0* _rto=NULL;
  513. _rto=X52run_type(a1);
  514. /*[IF*/
  515. if(X52is_pointer(_rto)){
  516. R=((T0*)(C));
  517. }
  518. else{
  519. R=r272smallest_ancestor((T272*)(r269type_pointer_ref()),_rto);
  520. }
  521. /*FI]*/
  522. return R;
  523. }
  524. int fBC269check_type=0;
  525.  
  526.  
  527. void r269check_type(T269* C){
  528. if(fBC269check_type==0){fBC269check_type=1;{
  529. T0* _rc=NULL;
  530. T0* _bc=NULL;
  531. _bc=r269base_class(C);
  532. /*[IF*/
  533. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  534. _rc=r269run_class(C);
  535. r269load_ref(((T0*)ms15_12804));
  536. }
  537. /*FI]*/
  538. /*[IF*/
  539. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  540. /*[IF*/
  541. if(!((/*RF2*/(((T51*)_bc))->_is_expanded/*17*/))){
  542. r269error(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/(C)->_base_class_name/*4*/))))->_start_position/*0*/)/*)*/,((T0*)ms269_38600));
  543. }
  544. /*FI]*/
  545. }
  546. /*FI]*/
  547. }}}
  548.  
  549.  
  550. void r269load_ref(T0* a1){
  551. T0* _rf=NULL;
  552. T0* _rc=NULL;
  553. T0* _cn=NULL;
  554. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  555. *n=M61;
  556. /*[IRF3.3unknown_position*/((((T61*)(n)))->_to_string)=(a1);
  557. /*]*/
  558. _cn=((T0*)n);
  559. }
  560. _rc=r51run_class((T51*)(r61base_class(((T61*)_cn))));
  561. _rf=r50get_feature_with(((T50*)_rc),((T0*)ms15_1724));
  562. }
  563.  
  564.  
  565. T0* r269to_runnable(T269* C,T0* a1){
  566. T0* R=NULL;
  567. R=((T0*)(C));
  568. r269check_type(C);
  569. return R;
  570. }
  571. T0*oBC269type_pointer_ref=NULL;
  572. int fBC269type_pointer_ref=0;
  573.  
  574.  
  575. T0* r269type_pointer_ref(void){
  576. if(fBC269type_pointer_ref==0){fBC269type_pointer_ref=1;{
  577. T0* _pointer_ref=NULL;
  578. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  579. *n=M61;
  580. /*[IRF3.3unknown_position*/((((T61*)(n)))->_to_string)=(((T0*)ms15_12804));
  581. /*]*/
  582. _pointer_ref=((T0*)n);
  583. }
  584. {T272*n=((T272*)malloc(sizeof(*n))/*8*/);
  585. *n=M272;
  586. oBC269type_pointer_ref=((T0*)n);
  587. /*[IRF3.3make*/((((T272*)(n)))->_base_class_name)=(_pointer_ref);
  588. /*]*/
  589. }
  590. }}
  591. return oBC269type_pointer_ref;
  592. }
  593.  
  594.  
  595. void r269id_extra_information(T0* a1){
  596. r48put_string(((T48*)a1),((T0*)ms52_9724));
  597. /*[IF*/
  598. /*AF*//*AE*/
  599. r48put_string(((T48*)a1),((T0*)ms52_759));
  600. /*FI]*/
  601. }
  602.  
  603.  
  604. void r269gc_mark_in(T0* a1){
  605. r7append(((T7*)a1),((T0*)ms14_8764));
  606. r2append_in(8,a1);
  607. }
  608.  
  609.  
  610. void r269c_type_for_external_in(T0* a1){
  611. /*[IF*/
  612. /*AF*//*AE*/
  613. /*[IRF3.6c_type_for_result_in*/{T0* b1=a1;
  614. r269c_type_for_argument_in(b1);
  615. }/*]*/
  616. /*FI]*/
  617. }
  618.  
  619.  
  620. void r269c_type_for_argument_in(T0* a1){
  621. r7extend(((T7*)a1),((T3)'T'));
  622. r7extend(((T7*)a1),((T3)'8'));
  623. }
  624.  
  625.  
  626. T0* r269run_time_mark(void){
  627. T0* R=NULL;
  628. R=((T0*)ms15_6776);
  629. return R;
  630. }
  631.  
  632.  
  633. T0* r269run_class(T269* C){
  634. T0* R=NULL;
  635. R=r49run_class((T0*)C);
  636. return R;
  637. }
  638.  
  639.  
  640. void r269demangling_in(T0* a1){
  641. /*[IF*/
  642. /*AF*//*AE*/
  643. r7extend(((T7*)a1),((T3)'E'));
  644. /*FI]*/
  645. r7extend(((T7*)a1),((T3)'\40'));
  646. r7append(((T7*)a1),r269run_time_mark());
  647. }
  648.  
  649.  
  650. T0* r269written_mark(void){
  651. T0* R=NULL;
  652. R=((T0*)ms15_6776);
  653. return R;
  654. }
  655.  
  656.  
  657. T0* r267generic_list(T267* C){
  658. T0* R=NULL;
  659. r267fatal_error_generic_list(C);
  660. return R;
  661. }
  662.  
  663.  
  664. void r267gc_call_new_in(T0* a1){
  665. r7append(((T7*)a1),((T0*)ms14_990));
  666. r2append_in(2,a1);
  667. r7extend(((T7*)a1),((T3)'\50'));
  668. r7extend(((T7*)a1),((T3)'\51'));
  669. }
  670.  
  671.  
  672. T0* r267base_class(T267* C){
  673. T0* R=NULL;
  674. T0* _bcn=NULL;
  675. _bcn=(/*RF2*/(C)->_base_class_name/*4*/);
  676. /*[IF*/
  677. if((_bcn)!=((void*)(NULL))){
  678. R=r61base_class(((T61*)_bcn));
  679. }
  680. else{
  681. /*[IRF3.6append*/{T0* b1=((T0*)ms52_36693);
  682. r7append((T7*)(oBC66explanation),b1);
  683. }/*]*/
  684. r66add_type((T0*)C,((T0*)ms14_46));
  685. r66print_as_fatal_error((T66*)(oBC13eh));
  686. }
  687. /*FI]*/
  688. return R;
  689. }
  690.  
  691.  
  692. T0* r267look_up_for(T267* C,T0* a1,T0* a2){
  693. T0* R=NULL;
  694. R=r51look_up_for((T51*)(r267base_class(C)),a1,a2);
  695. return R;
  696. }
  697.  
  698.  
  699. T2 r267c_sizeof(void){
  700. T2 R=0;
  701. R=sizeof(T2);
  702. return R;
  703. }
  704.  
  705.  
  706. T6 r267has_creation(T267* C,T0* a1){
  707. T6 R=0;
  708. {T68 se_tmp0;
  709. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  710. }
  711. r267error(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/(C)->_base_class_name/*4*/))))->_start_position/*0*/)/*)*/,((T0*)ms264_99414));
  712. return R;
  713. }
  714.  
  715.  
  716. void r267error(T68 a1,T0* a2){
  717. r66add_position(a1);
  718. /*[IRF3.6append*/{T0* b1=a2;
  719. r7append((T7*)(oBC66explanation),b1);
  720. }/*]*/
  721. r66print_as_error((T66*)(oBC13eh));
  722. }
  723.  
  724.  
  725. T0* r267actual_reference(T0* a1){
  726. T0* R=NULL;
  727. T0* _cn=NULL;
  728. /*[IF*/
  729. if((X52run_time_mark(a1))==((void*)(((T0*)ms15_12595)))){
  730. R=a1;
  731. }
  732. else{
  733. {T68 se_tmp0;
  734. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  735. *n=M61;
  736. r61make(n,((T0*)ms15_12595),(*(se_tmp0=X52start_position(a1),&se_tmp0)));
  737. _cn=((T0*)n);
  738. }
  739. }
  740. {T272*n=((T272*)malloc(sizeof(*n))/*8*/);
  741. *n=M272;
  742. /*[IRF3.3make*/((((T272*)(n)))->_base_class_name)=(_cn);
  743. /*]*/
  744. R=((T0*)n);
  745. }
  746. }
  747. /*FI]*/
  748. return R;
  749. }
  750.  
  751.  
  752. T6 r267is_a_in(T267* C,T0* a1,T0* a2){
  753. T6 R=0;
  754. T0* _ct=NULL;
  755. T0* _t2=NULL;
  756. T0* _t1=NULL;
  757. /*[IF*/
  758. if((r267written_mark())==((void*)(X52written_mark(a1)))){
  759. R=1;
  760. }
  761. else{
  762. _ct=(/*RF2*/(((T50*)a2))->_current_type/*0*/);
  763. _t1=r267to_runnable(C,_ct);
  764. _t2=X52to_runnable(a1,_ct);
  765. /*[IF*/
  766. if((X52run_time_mark(_t1))==((void*)(X52run_time_mark(_t2)))){
  767. R=1;
  768. }
  769. else{
  770. R=X52is_a(_t1,_t2);
  771. }
  772. /*FI]*/
  773. }
  774. /*FI]*/
  775. return R;
  776. }
  777.  
  778.  
  779. T6 r267is_native_array(T267* C){
  780. T6 R=0;
  781. T0* _tna=NULL;
  782. _tna=NULL;
  783. R=(_tna)!=((void*)(NULL));
  784. return R;
  785. }
  786.  
  787.  
  788. T6 r267is_a(T267* C,T0* a1){
  789. T6 R=0;
  790. /*[IF*/
  791. if(X52is_integer(a1)){
  792. R=1;
  793. }
  794.  else if((X52is_double(a1))||(X52is_real(a1))){
  795. R=1;
  796. }
  797. else{
  798. R=r51is_subclass_of((T51*)(r267base_class(C)),X52base_class(a1));
  799. }
  800. /*FI]*/
  801. /*[IF*/
  802. if(!(R)){
  803. r66add_type((T0*)C,((T0*)ms14_17460));
  804. r66add_type(a1,((T0*)ms14_46));
  805. }
  806. /*FI]*/
  807. return R;
  808. }
  809.  
  810.  
  811. void r267make(T267* C,T68 a1){
  812. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  813. *n=M61;
  814. r61make(n,((T0*)ms15_6643),a1);
  815. (/*SFN*/C->_base_class_name)=((T0*)n);
  816. }
  817. }
  818.  
  819.  
  820. void r267fatal_error_generic_list(T267* C){
  821. r66add_type((T0*)C,((T0*)ms52_28899));
  822. r66print_as_fatal_error((T66*)(oBC13eh));
  823. }
  824.  
  825.  
  826. void r267c_initialize_in(T0* a1){
  827. /*[IF*/
  828. /*AF*//*AE*/
  829. r7extend(((T7*)a1),((T3)'0'));
  830. /*FI]*/
  831. }
  832.  
  833.  
  834. T0* r267smallest_ancestor(T267* C,T0* a1){
  835. T0* R=NULL;
  836. T0* _rto=NULL;
  837. _rto=X52run_type(a1);
  838. /*[IF*/
  839. if(X52is_integer(_rto)){
  840. R=((T0*)(C));
  841. }
  842.  else if(X52is_real(_rto)){
  843. R=a1;
  844. }
  845.  else if(X52is_double(_rto)){
  846. R=a1;
  847. }
  848. else{
  849. R=r272smallest_ancestor((T272*)(r267type_integer_ref()),_rto);
  850. }
  851. /*FI]*/
  852. return R;
  853. }
  854. int fBC267check_type=0;
  855.  
  856.  
  857. void r267check_type(T267* C){
  858. if(fBC267check_type==0){fBC267check_type=1;{
  859. T0* _rc=NULL;
  860. T0* _bc=NULL;
  861. _bc=r267base_class(C);
  862. /*[IF*/
  863. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  864. _rc=r267run_class(C);
  865. r267load_ref(((T0*)ms15_12595));
  866. }
  867. /*FI]*/
  868. /*[IF*/
  869. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  870. /*[IF*/
  871. if(!((/*RF2*/(((T51*)_bc))->_is_expanded/*17*/))){
  872. r267error(/*(IRF4.6start_position*/(/*RF2*/(((T61*)((/*RF2*/(C)->_base_class_name/*4*/))))->_start_position/*0*/)/*)*/,((T0*)ms267_38125));
  873. }
  874. /*FI]*/
  875. }
  876. /*FI]*/
  877. }}}
  878.  
  879.  
  880. void r267load_ref(T0* a1){
  881. T0* _rf=NULL;
  882. T0* _rc=NULL;
  883. T0* _cn=NULL;
  884. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  885. *n=M61;
  886. /*[IRF3.3unknown_position*/((((T61*)(n)))->_to_string)=(a1);
  887. /*]*/
  888. _cn=((T0*)n);
  889. }
  890. _rc=r51run_class((T51*)(r61base_class(((T61*)_cn))));
  891. _rf=r50get_feature_with(((T50*)_rc),((T0*)ms15_1724));
  892. }
  893.  
  894.  
  895. T0* r267to_runnable(T267* C,T0* a1){
  896. T0* R=NULL;
  897. R=((T0*)(C));
  898. r267check_type(C);
  899. return R;
  900. }
  901. T0*oBC267type_integer_ref=NULL;
  902. int fBC267type_integer_ref=0;
  903.  
  904.  
  905. T0* r267type_integer_ref(void){
  906. if(fBC267type_integer_ref==0){fBC267type_integer_ref=1;{
  907. T0* _integer_ref=NULL;
  908. {T61*n=((T61*)malloc(sizeof(*n))/*12*/);
  909. *n=M61;
  910. /*[IRF3.3unknown_position*/((((T61*)(n)))->_to_string)=(((T0*)ms15_12595));
  911. /*]*/
  912. _integer_ref=((T0*)n);
  913. }
  914. {T272*n=((T272*)malloc(sizeof(*n))/*8*/);
  915. *n=M272;
  916. oBC267type_integer_ref=((T0*)n);
  917. /*[IRF3.3make*/((((T272*)(n)))->_base_class_name)=(_integer_ref);
  918. /*]*/
  919. }
  920. }}
  921. return oBC267type_integer_ref;
  922. }
  923.  
  924.  
  925. void r267id_extra_information(T0* a1){
  926. r48put_string(((T48*)a1),((T0*)ms52_9724));
  927. /*[IF*/
  928. /*AF*//*AE*/
  929. r48put_string(((T48*)a1),((T0*)ms52_759));
  930. /*FI]*/
  931. }
  932.  
  933.  
  934. void r267gc_mark_in(T0* a1){
  935. r7append(((T7*)a1),((T0*)ms14_8764));
  936. r2append_in(2,a1);
  937. }
  938.  
  939.  
  940. void r267c_type_for_external_in(T0* a1){
  941. /*[IF*/
  942. /*AF*//*AE*/
  943. /*[IRF3.6c_type_for_result_in*/{T0* b1=a1;
  944. r267c_type_for_argument_in(b1);
  945. }/*]*/
  946. /*FI]*/
  947. }
  948.  
  949.  
  950. void r267c_type_for_argument_in(T0* a1){
  951. r7extend(((T7*)a1),((T3)'T'));
  952. r7extend(((T7*)a1),((T3)'2'));
  953. }
  954.  
  955.  
  956. T0* r267run_time_mark(void){
  957. T0* R=NULL;
  958. R=((T0*)ms15_6643);
  959. return R;
  960. }
  961.  
  962.  
  963. T0* r267run_class(T267* C){
  964. T0* R=NULL;
  965. R=r49run_class((T0*)C);
  966. return R;
  967. }
  968.  
  969.  
  970. void r267demangling_in(T0* a1){
  971. /*[IF*/
  972. /*AF*//*AE*/
  973. r7extend(((T7*)a1),((T3)'E'));
  974. /*FI]*/
  975. r7extend(((T7*)a1),((T3)'\40'));
  976. r7append(((T7*)a1),r267run_time_mark());
  977. }
  978.  
  979.  
  980. T0* r267written_mark(void){
  981. T0* R=NULL;
  982. R=((T0*)ms15_6643);
  983. return R;
  984. }
  985.  
  986.  
  987. void r43split_mode_c_compiler_command(T43* C,T0* a1,T0* a2){
  988. /*[IRF3.3clear*/((((T7*)(((T7*)a1))))->_count)=(0);
  989. /*]*/
  990. /*[IF*/
  991. if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_903)))){
  992. r7append(((T7*)a1),((T0*)ms43_903));
  993. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  994. r43append_token(a1,((T0*)ms43_288));
  995. r43append_token(a1,a2);
  996. }
  997.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_8280)))){
  998. r7append(((T7*)a1),((T0*)ms43_918));
  999. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1000. r43append_token(a1,a2);
  1001. }
  1002.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_396)))){
  1003. r7append(((T7*)a1),((T0*)ms43_396));
  1004. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1005. r43append_token(a1,((T0*)ms43_288));
  1006. r43append_token(a1,a2);
  1007. }
  1008.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_4542)))){
  1009. r7append(((T7*)a1),((T0*)ms43_4488));
  1010. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1011. r43append_token(a1,a2);
  1012. }
  1013.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1985)))){
  1014. r7append(((T7*)a1),((T0*)ms43_1985));
  1015. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1016. r43append_token(a1,((T0*)ms43_288));
  1017. r43append_token(a1,a2);
  1018. }
  1019.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_6162)))){
  1020. r7append(((T7*)a1),((T0*)ms43_6162));
  1021. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1022. r43append_token(a1,((T0*)ms43_288));
  1023. r43append_token(a1,a2);
  1024. }
  1025.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_414)))){
  1026. r7append(((T7*)a1),((T0*)ms43_414));
  1027. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1028. r43append_token(a1,((T0*)ms43_288));
  1029. r43append_token(a1,a2);
  1030. }
  1031.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_428)))){
  1032. r7append(((T7*)a1),((T0*)ms43_428));
  1033. r43append_token(a1,r43sas_c_compiler_options(1));
  1034. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1035. r43append_token(a1,a2);
  1036. }
  1037.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1620)))){
  1038. r7append(((T7*)a1),((T0*)ms43_894));
  1039. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1040. r43append_token(a1,((T0*)ms43_288));
  1041. r43append_token(a1,a2);
  1042. }
  1043.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1656)))){
  1044. r7append(((T7*)a1),((T0*)ms43_434));
  1045. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1046. r43append_token(a1,((T0*)ms43_288));
  1047. r43append_token(a1,a2);
  1048. }
  1049.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_891)))){
  1050. r7append(((T7*)a1),((T0*)ms43_891));
  1051. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1052. r43append_token(a1,((T0*)ms43_288));
  1053. r43append_token(a1,a2);
  1054. }
  1055. /*FI]*/
  1056. }
  1057.  
  1058.  
  1059. void r43add_x_suffix(T43* C,T0* a1){
  1060. T0* _suffix=NULL;
  1061. _suffix=r43x_suffix(C);
  1062. /*[IF*/
  1063. if(!(r7has_suffix(((T7*)a1),_suffix))){
  1064. r7append(((T7*)a1),_suffix);
  1065. }
  1066. /*FI]*/
  1067. }
  1068.  
  1069.  
  1070. void r43environment_variable_substitution(T43* C,T0* a1,T0* a2){
  1071. T0* _variable=NULL;
  1072. T0* _value=NULL;
  1073. T3 _c=0;
  1074. T2 _mem2=0;
  1075. T2 _mem1=0;
  1076. T2 _state=0;
  1077. T2 _i=0;
  1078. _i=1;
  1079. while (!((_i)>((/*RF2*/(((T7*)a2))->_count/*4*/))))
  1080. {
  1081. _c=/*(IRF4.6item*/((/*RF2*/(((T7*)a2))->_storage/*0*/))[(_i)-(1)]/*)*/;
  1082. {int z1=_state;
  1083.  
  1084. if((0==z1)){
  1085. /*[IF*/
  1086. if((_c)==(((T3)'\44'))){
  1087. _state=1;
  1088. _mem1=_i;
  1089. }
  1090. /*FI]*/
  1091. }
  1092.  else 
  1093. if((1==z1)){
  1094. /*[IF*/
  1095. if((_c)==(((T3)'\173'))){
  1096. _state=2;
  1097. {T7*n=((T7*)malloc(sizeof(*n))/*12*/);
  1098. *n=M7;
  1099. r7make(n,8);
  1100. _variable=((T0*)n);
  1101. }
  1102. }
  1103. else{
  1104. _state=0;
  1105. }
  1106. /*FI]*/
  1107. }
  1108.  else 
  1109. if((2==z1)){
  1110. /*[IF*/
  1111. if((_c)==(((T3)'\175'))){
  1112. _state=3;
  1113. _mem2=_i;
  1114. }
  1115. else{
  1116. r7extend(((T7*)_variable),_c);
  1117. }
  1118. /*FI]*/
  1119. }
  1120. }
  1121. _i=(_i)+(1);
  1122. }
  1123. /*[IF*/
  1124. if((_state)==(3)){
  1125. _value=r43get_environment_variable(C,_variable);
  1126. /*[IF*/
  1127. if((_value)==((void*)(NULL))){
  1128. r35w_put_string(((T0*)ms43_76935));
  1129. r35w_put_string(_variable);
  1130. r35w_put_string(((T0*)ms43_3636));
  1131. r35w_put_string(a1);
  1132. r35w_put_string(((T0*)ms43_6412));
  1133. }
  1134. else{
  1135. r7copy(((T7*)_variable),a2);
  1136. r7head(((T7*)a2),(_mem1)-(1));
  1137. r7append(((T7*)a2),_value);
  1138. r7remove_first(((T7*)_variable),_mem2);
  1139. r7append(((T7*)a2),_variable);
  1140. r43environment_variable_substitution(C,a1,a2);
  1141. }
  1142. /*FI]*/
  1143. }
  1144. /*FI]*/
  1145. }
  1146.  
  1147.  
  1148. void r43put_c_main_function_type(T43* C,T0* a1){
  1149. /*[IF*/
  1150. if((((T0*)ms43_738))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1151. r48put_string(((T48*)a1),((T0*)ms14_1736a));
  1152. }
  1153. else{
  1154. r48put_string(((T48*)a1),((T0*)ms14_993));
  1155. }
  1156. /*FI]*/
  1157. }
  1158. T0*oBC43compiler_list=NULL;
  1159. T0*oBC43object_suffix=NULL;
  1160. int fBC43object_suffix=0;
  1161.  
  1162.  
  1163. T0* r43object_suffix(T43* C){
  1164. if(fBC43object_suffix==0){fBC43object_suffix=1;{
  1165. /*[IF*/
  1166. if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_903)))){
  1167. oBC43object_suffix=((T0*)ms43_314);
  1168. }
  1169.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_8280)))){
  1170. oBC43object_suffix=((T0*)ms43_1444);
  1171. }
  1172.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_396)))){
  1173. /*[IF*/
  1174. if(((/*RF2*/(C)->_system_name/*0*/))==((void*)(((T0*)ms43_738)))){
  1175. oBC43object_suffix=((T0*)ms43_1444);
  1176. r7to_upper(((T7*)oBC43object_suffix));
  1177. }
  1178. else{
  1179. oBC43object_suffix=((T0*)ms43_314);
  1180. }
  1181. /*FI]*/
  1182. }
  1183.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_4542)))){
  1184. oBC43object_suffix=((T0*)ms43_1444);
  1185. }
  1186.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1985)))){
  1187. oBC43object_suffix=((T0*)ms43_1444);
  1188. }
  1189.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_6162)))){
  1190. oBC43object_suffix=((T0*)ms43_1444);
  1191. }
  1192.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_414)))){
  1193. oBC43object_suffix=((T0*)ms43_1444);
  1194. }
  1195.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_428)))){
  1196. oBC43object_suffix=((T0*)ms43_314);
  1197. }
  1198.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1620)))){
  1199. oBC43object_suffix=((T0*)ms43_314);
  1200. }
  1201.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1656)))){
  1202. oBC43object_suffix=((T0*)ms43_314);
  1203. }
  1204.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_891)))){
  1205. oBC43object_suffix=((T0*)ms43_314);
  1206. }
  1207. /*FI]*/
  1208. }}
  1209. return oBC43object_suffix;
  1210. }
  1211. T328 oBC1file_tools=0;
  1212.  
  1213.  
  1214. void r43external_c_files_for_lcc_win32(T43* C,T0* a1){
  1215. T2 _i=0;
  1216. T0* _c_file=NULL;
  1217. T0* _c_files=NULL;
  1218. /*[IF*/
  1219. if(!(/*(IRF4.7is_empty*/((/*RF2*/((T7*)(((T0*)ms43_0aaa)))->_count/*4*/))==(0)/*)*/)){
  1220. _c_files=r7split((T7*)(((T0*)ms43_0aaa)));
  1221. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms43_0aaa)))))->_count)=(0);
  1222. /*]*/
  1223. /*[IF*/
  1224. if((_c_files)!=((void*)(NULL))){
  1225. _i=(/*RF2*/(((T44*)_c_files))->_lower/*16*/);
  1226. while (!((_i)>((/*RF2*/(((T44*)_c_files))->_upper/*12*/))))
  1227. {
  1228. _c_file=r44item(((T44*)_c_files),_i);
  1229. r7append(((T7*)a1),((T0*)ms43_918));
  1230. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1231. r43append_token(a1,_c_file);
  1232. r7extend(((T7*)a1),((T3)'\n'));
  1233. /*[IRF3.6remove_suffix*/{T7* C1=((T7*)_c_file);
  1234. T0* b1=((T0*)ms13_290);
  1235. r7remove_last(C1,(/*RF2*/(((T7*)b1))->_count/*4*/));
  1236. }/*]*/
  1237. r7append(((T7*)_c_file),r43object_suffix(C));
  1238. r43append_token(((T0*)ms43_0a),_c_file);
  1239. _i=(_i)+(1);
  1240. }
  1241. }
  1242. /*FI]*/
  1243. }
  1244. /*FI]*/
  1245. }
  1246.  
  1247.  
  1248. void r43make(T43* C){
  1249. T2 _i=0;
  1250. T0* _system_se_path=NULL;
  1251. _system_se_path=r43get_environment_variable(C,((T0*)ms14_18623));
  1252. /*[IF*/
  1253. if((_system_se_path)==((void*)(NULL))){
  1254. _system_se_path=r7twin((T7*)(((T0*)ms14_18623)));
  1255. r7to_upper(((T7*)_system_se_path));
  1256. _system_se_path=r43get_environment_variable(C,_system_se_path);
  1257. /*[IF*/
  1258. if((_system_se_path)==((void*)(NULL))){
  1259. r35put_string((T35*)(oBC13echo),((T0*)ms43_225848));
  1260. _system_se_path=((T0*)ms43_131716);
  1261. r35put_string((T35*)(oBC13echo),_system_se_path);
  1262. r35put_string((T35*)(oBC13echo),((T0*)ms14_160));
  1263. }
  1264. /*FI]*/
  1265. }
  1266. else{
  1267. r35put_string((T35*)(oBC13echo),((T0*)ms43_12311));
  1268. r35put_string((T35*)(oBC13echo),_system_se_path);
  1269. r35put_string((T35*)(oBC13echo),((T0*)ms14_270));
  1270. }
  1271. /*FI]*/
  1272. /*[IF*/
  1273. if(r7has_suffix(((T7*)_system_se_path),((T0*)ms14_13293))){
  1274. r35sfr_connect((T35*)(oBC13echo),oBC13tmp_file_read,_system_se_path);
  1275. }
  1276. else{
  1277. r35put_string((T35*)(oBC13echo),((T0*)ms43_848426));
  1278. /*[IF*/
  1279. if(r7has(((T7*)_system_se_path),((T3)'\57'))){
  1280. r35put_string((T35*)(oBC13echo),((T0*)ms43_25014));
  1281. r7copy((T7*)(oBC13tmp_path),_system_se_path);
  1282. r7extend_unless((T7*)(oBC13tmp_path),((T3)'\57'));
  1283. r7append((T7*)(oBC13tmp_path),((T0*)ms14_1053));
  1284. r7extend((T7*)(oBC13tmp_path),((T3)'\57'));
  1285. r7append((T7*)(oBC13tmp_path),((T0*)ms14_13293));
  1286. r35sfr_connect((T35*)(oBC13echo),oBC13tmp_file_read,oBC13tmp_path);
  1287. }
  1288. /*FI]*/
  1289. /*[IF*/
  1290. if(!(/*(IRF4.7is_connected*/((/*RF2*/((T40*)(oBC13tmp_file_read))->_path/*1*/))!=(NULL)/*)*/)){
  1291. /*[IF*/
  1292. if(r7has(((T7*)_system_se_path),((T3)'\134'))){
  1293. r35put_string((T35*)(oBC13echo),((T0*)ms43_28368));
  1294. r7copy((T7*)(oBC13tmp_path),_system_se_path);
  1295. r7extend_unless((T7*)(oBC13tmp_path),((T3)'\134'));
  1296. r7append((T7*)(oBC13tmp_path),((T0*)ms14_1053));
  1297. r7extend((T7*)(oBC13tmp_path),((T3)'\134'));
  1298. r7append((T7*)(oBC13tmp_path),((T0*)ms14_13293));
  1299. r35sfr_connect((T35*)(oBC13echo),oBC13tmp_file_read,oBC13tmp_path);
  1300. }
  1301. /*FI]*/
  1302. }
  1303. /*FI]*/
  1304. /*[IF*/
  1305. if(!(/*(IRF4.7is_connected*/((/*RF2*/((T40*)(oBC13tmp_file_read))->_path/*1*/))!=(NULL)/*)*/)){
  1306. /*[IF*/
  1307. if(r7has(((T7*)_system_se_path),((T3)'\72'))){
  1308. r35put_string((T35*)(oBC13echo),((T0*)ms43_30704));
  1309. r7copy((T7*)(oBC13tmp_path),_system_se_path);
  1310. r7extend_unless((T7*)(oBC13tmp_path),((T3)'\72'));
  1311. r7append((T7*)(oBC13tmp_path),((T0*)ms14_1053));
  1312. r7extend((T7*)(oBC13tmp_path),((T3)'\72'));
  1313. r7append((T7*)(oBC13tmp_path),((T0*)ms14_13293));
  1314. r35sfr_connect((T35*)(oBC13echo),oBC13tmp_file_read,oBC13tmp_path);
  1315. }
  1316. /*FI]*/
  1317. }
  1318. /*FI]*/
  1319. /*[IF*/
  1320. if(!(/*(IRF4.7is_connected*/((/*RF2*/((T40*)(oBC13tmp_file_read))->_path/*1*/))!=(NULL)/*)*/)){
  1321. /*[IF*/
  1322. if(r7has(((T7*)_system_se_path),((T3)'\135'))){
  1323. r35put_string((T35*)(oBC13echo),((T0*)ms43_18846));
  1324. r7copy((T7*)(oBC13tmp_path),_system_se_path);
  1325. r7extend_unless((T7*)(oBC13tmp_path),((T3)'\135'));
  1326. r7remove_last((T7*)(oBC13tmp_path),1);
  1327. r7extend((T7*)(oBC13tmp_path),((T3)'\56'));
  1328. r7append((T7*)(oBC13tmp_path),((T0*)ms14_1053));
  1329. r7extend((T7*)(oBC13tmp_path),((T3)'\135'));
  1330. r7append((T7*)(oBC13tmp_path),((T0*)ms14_13293));
  1331. r35sfr_connect((T35*)(oBC13echo),oBC13tmp_file_read,oBC13tmp_path);
  1332. }
  1333. /*FI]*/
  1334. }
  1335. /*FI]*/
  1336. /*[IF*/
  1337. if(!(/*(IRF4.7is_connected*/((/*RF2*/((T40*)(oBC13tmp_file_read))->_path/*1*/))!=(NULL)/*)*/)){
  1338. r35put_string((T35*)(oBC13echo),((T0*)ms43_7358));
  1339. r7copy((T7*)(oBC13tmp_path),_system_se_path);
  1340. r7append((T7*)(oBC13tmp_path),((T0*)ms14_13293));
  1341. r35sfr_connect((T35*)(oBC13echo),oBC13tmp_file_read,oBC13tmp_path);
  1342. }
  1343. /*FI]*/
  1344. }
  1345. /*FI]*/
  1346. /*[IF*/
  1347. if(!(/*(IRF4.7is_connected*/((/*RF2*/((T40*)(oBC13tmp_file_read))->_path/*1*/))!=(NULL)/*)*/)){
  1348. r35w_put_string(((T0*)ms43_716872));
  1349. exit(1);
  1350. }
  1351. /*FI]*/
  1352. r40read_line((T40*)(oBC13tmp_file_read));
  1353. (/*SFN*/C->_system_name)=oBC41last_string;
  1354. _i=r44index_of((T44*)(oBC43system_list),(/*RF2*/(C)->_system_name/*0*/));
  1355. /*[IF*/
  1356. if((_i)>((/*RF2*/((T44*)(oBC43system_list))->_upper/*12*/))){
  1357. r35w_put_string(((T0*)ms43_43761));
  1358. r35w_put_string((/*RF2*/((T40*)(oBC13tmp_file_read))->_path/*1*/));
  1359. r35w_put_string(((T0*)ms43_22824));
  1360. _i=1;
  1361. while (!((_i)>((/*RF2*/((T44*)(oBC43system_list))->_upper/*12*/))))
  1362. {
  1363. r35w_put_string(r44item((T44*)(oBC43system_list),_i));
  1364. r35w_put_character(((T3)'\n'));
  1365. _i=(_i)+(1);
  1366. }
  1367. exit(1);
  1368. }
  1369. else{
  1370. (/*SFN*/C->_system_name)=r44item((T44*)(oBC43system_list),_i);
  1371. r35put_string((T35*)(oBC13echo),((T0*)ms43_10010));
  1372. r35put_string((T35*)(oBC13echo),(/*RF2*/(C)->_system_name/*0*/));
  1373. r35put_string((T35*)(oBC13echo),((T0*)ms14_270));
  1374. }
  1375. /*FI]*/
  1376. (/*SFN*/C->_sys_directory)=r7twin((T7*)((/*RF2*/((T40*)(oBC13tmp_file_read))->_path/*1*/)));
  1377. /*[IRF3.6remove_suffix*/{T7* C1=(T7*)((/*RF2*/(C)->_sys_directory/*4*/));
  1378. T0* b1=((T0*)ms14_13293);
  1379. r7remove_last(C1,(/*RF2*/(((T7*)b1))->_count/*4*/));
  1380. }/*]*/
  1381. r40disconnect((T40*)(oBC13tmp_file_read));
  1382. (/*SFN*/C->_bin_directory)=r7twin((T7*)((/*RF2*/(C)->_sys_directory/*4*/)));
  1383. r43parent_directory(C,(/*RF2*/(C)->_bin_directory/*8*/));
  1384. r43add_directory(C,(/*RF2*/(C)->_bin_directory/*8*/),((T0*)ms14_939));
  1385. }
  1386.  
  1387.  
  1388. void r43bad_use_exit(T43* C,T0* a1){
  1389. r35w_put_string(((T0*)ms43_46640));
  1390. r35w_put_string(a1);
  1391. r35w_put_string(((T0*)ms43_285));
  1392. r7copy((T7*)(oBC13tmp_path),(/*RF2*/(C)->_sys_directory/*4*/));
  1393. r43parent_directory(C,oBC13tmp_path);
  1394. r43add_directory(C,oBC13tmp_path,((T0*)ms43_948));
  1395. r7append((T7*)(oBC13tmp_path),a1);
  1396. r7append((T7*)(oBC13tmp_path),((T0*)ms13_1592));
  1397. r35w_put_string(((T0*)ms43_41310));
  1398. r35w_put_string(oBC13tmp_path);
  1399. r35w_put_character(((T3)'\n'));
  1400. exit(1);
  1401. }
  1402.  
  1403.  
  1404. void r43set_c_compiler(T43* C,T0* a1){
  1405. T3 _c=0;
  1406. T0* _sd=NULL;
  1407. T2 _i=0;
  1408. /*[IF*/
  1409. if((a1)!=((void*)(NULL))){
  1410. _i=r44index_of((T44*)(oBC43compiler_list),a1);
  1411. /*[IF*/
  1412. if((_i)>((/*RF2*/((T44*)(oBC43compiler_list))->_upper/*12*/))){
  1413. r35w_put_string(((T0*)ms43_13776));
  1414. r35w_put_string(a1);
  1415. r35w_put_string(((T0*)ms43_31119));
  1416. r43show_compiler_list_then_exit(C);
  1417. }
  1418. /*FI]*/
  1419. (/*SFN*/C->_c_compiler)=r44item((T44*)(oBC43compiler_list),_i);
  1420. }
  1421. else{
  1422. _sd=(/*RF2*/(C)->_sys_directory/*4*/);
  1423. r7copy((T7*)(oBC13tmp_path),_sd);
  1424. r7append((T7*)(oBC13tmp_path),((T0*)ms43_18117));
  1425. r35sfr_connect_or_exit((T35*)(oBC13echo),oBC13tmp_file_read,oBC13tmp_path);
  1426. (/*SFN*/C->_c_compiler)=r35read_word_in((T35*)(oBC13echo),oBC13tmp_file_read);
  1427. _i=r44index_of((T44*)(oBC43compiler_list),(/*RF2*/(C)->_c_compiler/*12*/));
  1428. /*[IF*/
  1429. if((_i)>((/*RF2*/((T44*)(oBC43compiler_list))->_upper/*12*/))){
  1430. r35w_put_string(((T0*)ms43_48887));
  1431. r35w_put_string((/*RF2*/((T40*)(oBC13tmp_file_read))->_path/*1*/));
  1432. r35w_put_string(((T0*)ms43_270a));
  1433. r43show_compiler_list_then_exit(C);
  1434. }
  1435. /*FI]*/
  1436. (/*SFN*/C->_c_compiler)=r44item((T44*)(oBC43compiler_list),_i);
  1437. /*[IF*/
  1438. if(!(r40end_of_input((T40*)(oBC13tmp_file_read)))){
  1439. _c=/*(IRF4.6last_character*/((T3)((/*RF2*/((T40*)(oBC13tmp_file_read))->_memory/*9*/)))/*)*/;
  1440. while (!(((_c)==(((T3)'\n')))||((_c)==(((T3)'\15')))))
  1441. {
  1442. r7extend((T7*)(((T0*)ms43_0aaaaaaa)),_c);
  1443. r40read_character((T40*)(oBC13tmp_file_read));
  1444. /*[IF*/
  1445. if(!(r40end_of_input((T40*)(oBC13tmp_file_read)))){
  1446. _c=/*(IRF4.6last_character*/((T3)((/*RF2*/((T40*)(oBC13tmp_file_read))->_memory/*9*/)))/*)*/;
  1447. }
  1448. /*FI]*/
  1449. }
  1450. }
  1451. /*FI]*/
  1452. r40disconnect((T40*)(oBC13tmp_file_read));
  1453. while (!((/*(IRF4.7is_empty*/((/*RF2*/((T7*)(((T0*)ms43_0aaaaaaa)))->_count/*4*/))==(0)/*)*/)||(!(r3is_separator(/*(IRF4.6first*/((/*RF2*/((T7*)(((T0*)ms43_0aaaaaaa)))->_storage/*0*/))[0]/*)*/)))))
  1454. {
  1455. r7remove_first((T7*)(((T0*)ms43_0aaaaaaa)),1);
  1456. }
  1457. /*[IF*/
  1458. if(/*(IRF4.7is_empty*/((/*RF2*/((T7*)(((T0*)ms43_0aaaaaaa)))->_count/*4*/))==(0)/*)*/){
  1459. /*[IF*/
  1460. if((((T0*)ms43_903))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1461. r7copy((T7*)(((T0*)ms43_0aaaaaaa)),((T0*)ms43_522));
  1462. }
  1463.  else if((((T0*)ms43_8280))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1464. r7copy((T7*)(((T0*)ms43_0aaaaaaa)),((T0*)ms43_248));
  1465. }
  1466.  else if((((T0*)ms43_396))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1467. r7copy((T7*)(((T0*)ms43_0aaaaaaa)),((T0*)ms43_248a));
  1468. }
  1469.  else if((((T0*)ms43_4542))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1470. }
  1471.  else if((((T0*)ms43_1985))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1472. r7copy((T7*)(((T0*)ms43_0aaaaaaa)),((T0*)ms43_130240));
  1473. }
  1474.  else if((((T0*)ms43_6162))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1475. r7copy((T7*)(((T0*)ms43_0aaaaaaa)),((T0*)ms43_44388));
  1476. }
  1477.  else if((((T0*)ms43_414))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1478. r7copy((T7*)(((T0*)ms43_0aaaaaaa)),((T0*)ms43_20265));
  1479. }
  1480.  else if((((T0*)ms43_428))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1481. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms43_0aaaaaaa)))))->_count)=(0);
  1482. /*]*/
  1483. r7copy((T7*)(((T0*)ms43_0aaaaaa)),((T0*)ms43_1592));
  1484. /*[IF*/
  1485. if(!(r43Scoptions_exists())){
  1486. r43append_token(((T0*)ms43_0aaaaaa),((T0*)ms43_44612));
  1487. }
  1488. /*FI]*/
  1489. }
  1490.  else if((((T0*)ms43_1620))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1491. r7copy((T7*)(((T0*)ms43_0aaaaaaa)),((T0*)ms43_5376));
  1492. }
  1493.  else if((((T0*)ms43_1656))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1494. /*[IF*/
  1495. if((((T0*)ms43_2395))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1496. r7copy((T7*)(((T0*)ms43_0aaaaaaa)),((T0*)ms43_5481));
  1497. }
  1498. /*FI]*/
  1499. }
  1500.  else if((((T0*)ms43_891))==((void*)((/*RF2*/(C)->_c_compiler/*12*/)))){
  1501. r7copy((T7*)(((T0*)ms43_0aaaaaaa)),((T0*)ms43_522a));
  1502. }
  1503. else{
  1504. }
  1505. /*FI]*/
  1506. }
  1507. /*FI]*/
  1508. }
  1509. /*FI]*/
  1510. }
  1511. T6 oBC43Scoptions_exists=0;
  1512. int fBC43Scoptions_exists=0;
  1513.  
  1514.  
  1515. T6 r43Scoptions_exists(void){
  1516. if(fBC43Scoptions_exists==0){fBC43Scoptions_exists=1;{
  1517. oBC43Scoptions_exists=r328is_readable(((T0*)ms43_10260));
  1518. }}
  1519. return oBC43Scoptions_exists;
  1520. }
  1521.  
  1522.  
  1523. void r43loading_path_add(T43* C,T0* a1,T0* a2,T2 a3){
  1524. T0* _line=NULL;
  1525. T0* _file=NULL;
  1526. /*[IF*/
  1527. if(((a3)>(5))||((r44count(((T44*)a1)))>(1024))){
  1528. r35w_put_string(((T0*)ms43_82530));
  1529. {T7*n=((T7*)malloc(sizeof(*n))/*12*/);
  1530. *n=M7;
  1531. r7make(n,1024);
  1532. _line=((T0*)n);
  1533. }
  1534. r43append_lp_in(C,_line,a1);
  1535. r35w_put_string(_line);
  1536. exit(1);
  1537. }
  1538. /*FI]*/
  1539. {T40*n=((T40*)malloc(sizeof(*n))/*13*/);
  1540. *n=M40;
  1541. /*[IRF3.1make*//*]*/
  1542. _file=((T0*)n);
  1543. }
  1544. r35sfr_connect((T35*)(oBC13echo),_file,a2);
  1545. /*[IF*/
  1546. if(/*(IRF4.7is_connected*/((/*RF2*/(((T40*)_file))->_path/*1*/))!=(NULL)/*)*/){
  1547. r35put_string((T35*)(oBC13echo),((T0*)ms43_25494));
  1548. r35put_string((T35*)(oBC13echo),a2);
  1549. r35put_string((T35*)(oBC13echo),((T0*)ms43_9785));
  1550. while (!(r40end_of_input(((T40*)_file))))
  1551. {
  1552. r40read_line(((T40*)_file));
  1553. _line=r7twin((T7*)(oBC41last_string));
  1554. r43environment_variable_substitution(C,a2,_line);
  1555. /*[IF*/
  1556. if(r7has_suffix(((T7*)_line),((T0*)ms43_18029))){
  1557. r43loading_path_add(C,a1,_line,(a3)+(1));
  1558. }
  1559.  else if(/*(IRF4.7is_empty*/((/*RF2*/(((T7*)_line))->_count/*4*/))==(0)/*)*/){
  1560. /*[IF*/
  1561. if(!(r40end_of_input(((T40*)_file)))){
  1562. r44add_last(((T44*)a1),_line);
  1563. }
  1564. /*FI]*/
  1565. }
  1566. else{
  1567. r44add_last(((T44*)a1),_line);
  1568. }
  1569. /*FI]*/
  1570. }
  1571. r40disconnect(((T40*)_file));
  1572. }
  1573. /*FI]*/
  1574. }
  1575. T0*oBC43make_suffix=NULL;
  1576. int fBC43make_suffix=0;
  1577.  
  1578.  
  1579. T0* r43make_suffix(T43* C){
  1580. if(fBC43make_suffix==0){fBC43make_suffix=1;{
  1581. /*[IF*/
  1582. if((((T0*)ms43_690))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1583. oBC43make_suffix=((T0*)ms43_1044);
  1584. }
  1585.  else if((((T0*)ms43_9226))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1586. oBC43make_suffix=((T0*)ms43_1428);
  1587. }
  1588.  else if((((T0*)ms43_738))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1589. oBC43make_suffix=((T0*)ms43_1076);
  1590. }
  1591.  else if((((T0*)ms43_636))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1592. oBC43make_suffix=((T0*)ms43_1032);
  1593. }
  1594. else{
  1595. oBC43make_suffix=((T0*)ms43_2300);
  1596. }
  1597. /*FI]*/
  1598. }}
  1599. return oBC43make_suffix;
  1600. }
  1601. T0*oBC43x_suffix=NULL;
  1602. int fBC43x_suffix=0;
  1603.  
  1604.  
  1605. T0* r43x_suffix(T43* C){
  1606. if(fBC43x_suffix==0){fBC43x_suffix=1;{
  1607. /*[IF*/
  1608. if((((T0*)ms43_690))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1609. oBC43x_suffix=((T0*)ms43_1472);
  1610. r7to_upper(((T7*)oBC43x_suffix));
  1611. }
  1612.  else if((((T0*)ms43_738))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1613. oBC43x_suffix=((T0*)ms43_1472);
  1614. r7to_upper(((T7*)oBC43x_suffix));
  1615. }
  1616.  else if((((T0*)ms43_636))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1617. oBC43x_suffix=((T0*)ms43_1472);
  1618. }
  1619.  else if((((T0*)ms43_9226))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1620. oBC43x_suffix=((T0*)ms43_1472);
  1621. }
  1622. else{
  1623. oBC43x_suffix=((T0*)ms43_0aaaa);
  1624. }
  1625. /*FI]*/
  1626. }}
  1627. return oBC43x_suffix;
  1628. }
  1629.  
  1630.  
  1631. void r43show_compiler_list_then_exit(T43* C){
  1632. T2 _i=0;
  1633. r35w_put_string(((T0*)ms43_29002));
  1634. _i=1;
  1635. while (!((_i)>((/*RF2*/((T44*)(oBC43compiler_list))->_upper/*12*/))))
  1636. {
  1637. r35w_put_string(r44item((T44*)(oBC43compiler_list),_i));
  1638. r35w_put_character(((T3)'\n'));
  1639. _i=(_i)+(1);
  1640. }
  1641. exit(1);
  1642. }
  1643.  
  1644.  
  1645. void r43no_split_mode_command(T43* C,T0* a1,T0* a2){
  1646. /*[IRF3.3clear*/((((T7*)(((T7*)a1))))->_count)=(0);
  1647. /*]*/
  1648. /*[IF*/
  1649. if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_903)))){
  1650. r7append(((T7*)a1),((T0*)ms43_903));
  1651. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1652. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1653. r43append_token(a1,((T0*)ms43_0aaaaa));
  1654. r43add_output_name(C,a1);
  1655. r43append_token(a1,a2);
  1656. r43append_token(a1,((T0*)ms43_0aaa));
  1657. r43append_token(a1,((T0*)ms43_0aa));
  1658. r43append_token(a1,((T0*)ms43_0a));
  1659. r43append_token(a1,((T0*)ms43_0));
  1660. }
  1661.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_8280)))){
  1662. r7append(((T7*)a1),((T0*)ms43_918));
  1663. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1664. r43append_token(a1,a2);
  1665. r7extend(((T7*)a1),((T3)'\n'));
  1666. r43external_c_files_for_lcc_win32(C,a1);
  1667. r7append(((T7*)a1),((T0*)ms43_6996));
  1668. /*[IF*/
  1669. if(!((/*RF2*/(C)->_no_strip/*16*/))){
  1670. r43append_token(a1,((T0*)ms43_320));
  1671. }
  1672. /*FI]*/
  1673. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1674. r43add_output_name(C,a1);
  1675. /*[IRF3.6remove_suffix*/{T7* C1=((T7*)a2);
  1676. T0* b1=((T0*)ms13_290);
  1677. r7remove_last(C1,(/*RF2*/(((T7*)b1))->_count/*4*/));
  1678. }/*]*/
  1679. r7append(((T7*)a2),r43object_suffix(C));
  1680. r43append_token(a1,a2);
  1681. r43append_token(a1,((T0*)ms43_0a));
  1682. r43append_token(a1,((T0*)ms43_0));
  1683. }
  1684.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_396)))){
  1685. r7append(((T7*)a1),((T0*)ms43_396));
  1686. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1687. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1688. r43append_token(a1,((T0*)ms43_0aaaaa));
  1689. r43add_output_name(C,a1);
  1690. r43append_token(a1,a2);
  1691. r43append_token(a1,((T0*)ms43_0aaa));
  1692. r43append_token(a1,((T0*)ms43_0a));
  1693. r43append_token(a1,((T0*)ms43_0));
  1694. }
  1695.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_4542)))){
  1696. r7append(((T7*)a1),((T0*)ms43_4542));
  1697. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1698. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1699. r43append_token(a1,((T0*)ms43_0aaaaa));
  1700. r43add_output_name(C,a1);
  1701. r43append_token(a1,a2);
  1702. r43append_token(a1,((T0*)ms43_0aaa));
  1703. r43append_token(a1,((T0*)ms43_0a));
  1704. r43append_token(a1,((T0*)ms43_0));
  1705. }
  1706.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1985)))){
  1707. r7append(((T7*)a1),((T0*)ms43_1985));
  1708. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1709. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1710. r43append_token(a1,((T0*)ms43_0aaaaa));
  1711. r43add_output_name(C,a1);
  1712. r43append_token(a1,a2);
  1713. r43append_token(a1,((T0*)ms43_0aaa));
  1714. r43append_token(a1,((T0*)ms43_0a));
  1715. r43append_token(a1,((T0*)ms43_0));
  1716. r43add_lib_math(C);
  1717. }
  1718.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_6162)))){
  1719. r7append(((T7*)a1),((T0*)ms43_6162));
  1720. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1721. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1722. r43append_token(a1,((T0*)ms43_0aaaaa));
  1723. r43add_output_name(C,a1);
  1724. r43append_token(a1,a2);
  1725. r43append_token(a1,((T0*)ms43_0aaa));
  1726. r43append_token(a1,((T0*)ms43_0a));
  1727. r43append_token(a1,((T0*)ms43_0));
  1728. r43add_lib_math(C);
  1729. }
  1730.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_414)))){
  1731. r7append(((T7*)a1),((T0*)ms43_414));
  1732. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1733. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1734. r43append_token(a1,((T0*)ms43_0aaaaa));
  1735. r43add_output_name(C,a1);
  1736. r43append_token(a1,a2);
  1737. r43append_token(a1,((T0*)ms43_0aaa));
  1738. r43append_token(a1,((T0*)ms43_0a));
  1739. r43append_token(a1,((T0*)ms43_0));
  1740. r43add_lib_math(C);
  1741. }
  1742.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_428)))){
  1743. r7append(((T7*)a1),((T0*)ms43_428));
  1744. r43append_token(a1,r43sas_c_compiler_options(0));
  1745. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1746. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1747. r43append_token(a1,((T0*)ms43_0aaaaa));
  1748. r43append_token(a1,a2);
  1749. r43append_token(a1,((T0*)ms43_0aaa));
  1750. r43append_token(a1,((T0*)ms43_0a));
  1751. r43append_token(a1,((T0*)ms43_0));
  1752. r43add_lib_math(C);
  1753. r43add_output_name(C,a1);
  1754. }
  1755.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1620)))){
  1756. r7append(((T7*)a1),((T0*)ms43_894));
  1757. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1758. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1759. r43append_token(a1,((T0*)ms43_0aaaaa));
  1760. r43add_output_name(C,a1);
  1761. r43append_token(a1,a2);
  1762. r43append_token(a1,((T0*)ms43_0aaa));
  1763. r43append_token(a1,((T0*)ms43_0a));
  1764. r43append_token(a1,((T0*)ms43_0));
  1765. r43add_lib_math(C);
  1766. /*[IF*/
  1767. if((/*RF2*/(C)->_no_strip/*16*/)){
  1768. r43append_token(a1,((T0*)ms43_320a));
  1769. }
  1770. /*FI]*/
  1771. }
  1772.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1656)))){
  1773. r7append(((T7*)a1),((T0*)ms43_434));
  1774. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1775. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1776. r43append_token(a1,((T0*)ms43_0aaaaa));
  1777. r43add_output_name(C,a1);
  1778. r43add_lib_math(C);
  1779. r43append_token(a1,a2);
  1780. r43append_token(a1,((T0*)ms43_0aaa));
  1781. r43append_token(a1,((T0*)ms43_0a));
  1782. r43append_token(a1,((T0*)ms43_0));
  1783. }
  1784.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_891)))){
  1785. r7append(((T7*)a1),((T0*)ms43_891));
  1786. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  1787. r43append_token(a1,((T0*)ms43_0aaaaaa));
  1788. r43append_token(a1,((T0*)ms43_0aaaaa));
  1789. r43add_output_name(C,a1);
  1790. r43append_token(a1,a2);
  1791. r43append_token(a1,((T0*)ms43_0aaa));
  1792. r43append_token(a1,((T0*)ms43_0aa));
  1793. r43append_token(a1,((T0*)ms43_0a));
  1794. r43append_token(a1,((T0*)ms43_0));
  1795. }
  1796. /*FI]*/
  1797. }
  1798.  
  1799.  
  1800. T2 r43extra_arg(T43* C,T0* a1,T2 a2,T0* a3){
  1801. T2 R=0;
  1802. /*[IF*/
  1803. if((/*(IRF4.6item*/((/*RF2*/(((T7*)a1))->_storage/*0*/))[(1)-(1)]/*)*/)!=(((T3)'\55'))){
  1804. /*[IF*/
  1805. if(r7has_suffix(((T7*)a1),r43object_suffix(C))){
  1806. r43append_token(((T0*)ms43_0a),a1);
  1807. R=(a2)+(1);
  1808. }
  1809.  else if(r7has_suffix(((T7*)a1),((T0*)ms13_290))){
  1810. r43append_token(((T0*)ms43_0aaa),a1);
  1811. R=(a2)+(1);
  1812. }
  1813.  else if(r43is_c_plus_plus_file_path(a1)){
  1814. r43append_token(((T0*)ms43_0aa),a1);
  1815. R=(a2)+(1);
  1816. }
  1817.  else if(r7has_suffix(((T7*)a1),((T0*)ms43_286))){
  1818. r43append_token(((T0*)ms43_0),a1);
  1819. R=(a2)+(1);
  1820. }
  1821.  else if(r7has_suffix(((T7*)a1),((T0*)ms43_1428a))){
  1822. r43append_token(((T0*)ms43_0),a1);
  1823. R=(a2)+(1);
  1824. }
  1825.  else if(r7has_suffix(((T7*)a1),((T0*)ms43_1504))){
  1826. r43append_token(((T0*)ms43_0),a1);
  1827. R=(a2)+(1);
  1828. }
  1829.  else if(((/*RF2*/((T47*)(oBC13run_control))->_root_class/*5*/))==((void*)(NULL))){
  1830. r47compute_root_class((T47*)(oBC13run_control),a1);
  1831. R=(a2)+(1);
  1832. /*[IF*/
  1833. if((a3)!=((void*)(NULL))){
  1834. /*[IF*/
  1835. if((/*(IRF4.6item*/((/*RF2*/(((T7*)a3))->_storage/*0*/))[(1)-(1)]/*)*/)!=(((T3)'\55'))){
  1836. /*[IF*/
  1837. if(r7has_suffix(((T7*)a3),r43object_suffix(C))){
  1838. }
  1839.  else if(r7has_suffix(((T7*)a3),((T0*)ms13_290))){
  1840. }
  1841.  else if(r43is_c_plus_plus_file_path(a3)){
  1842. }
  1843. else{
  1844. /*[IRF3.3set_root_procedure*/((((T47*)((T47*)(oBC13run_control))))->_root_procedure_memory)=(a3);
  1845. /*]*/
  1846. R=(a2)+(2);
  1847. }
  1848. /*FI]*/
  1849. }
  1850. /*FI]*/
  1851. }
  1852. /*FI]*/
  1853. }
  1854. else{
  1855. r43append_token(((T0*)ms43_0aaaaaaa),a1);
  1856. R=(a2)+(1);
  1857. }
  1858. /*FI]*/
  1859. }
  1860.  else if(r7has_prefix(((T7*)a1),((T0*)ms43_306))){
  1861. r43append_token(((T0*)ms43_0),a1);
  1862. R=(a2)+(1);
  1863. }
  1864.  else if(r7has_prefix(((T7*)a1),((T0*)ms43_242))){
  1865. r43append_token(((T0*)ms43_0aaaaa),a1);
  1866. /*[IF*/
  1867. if(r7is_equal(ms43_242a,a1)){
  1868. /*[IF*/
  1869. if((a3)!=((void*)(NULL))){
  1870. r43append_token(((T0*)ms43_0aaaaa),a3);
  1871. R=(a2)+(2);
  1872. }
  1873. /*FI]*/
  1874. }
  1875. else{
  1876. R=(a2)+(1);
  1877. }
  1878. /*FI]*/
  1879. }
  1880.  else if(r7is_equal(ms43_15800,a1)){
  1881. r43append_token(((T0*)ms43_0aaaaaa),a1);
  1882. /*[IF*/
  1883. if((a3)!=((void*)(NULL))){
  1884. r43append_token(((T0*)ms43_0aaaaaa),a3);
  1885. R=(a2)+(2);
  1886. }
  1887. else{
  1888. R=(a2)+(1);
  1889. }
  1890. /*FI]*/
  1891. }
  1892. else{
  1893. r43append_token(((T0*)ms43_0aaaaaaa),a1);
  1894. R=(a2)+(1);
  1895. }
  1896. /*FI]*/
  1897. return R;
  1898. }
  1899. int fBC43add_lib_math=0;
  1900.  
  1901.  
  1902. void r43add_lib_math(T43* C){
  1903. if(fBC43add_lib_math==0){fBC43add_lib_math=1;{
  1904. /*[IF*/
  1905. if((((T0*)ms43_1316))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1906. }
  1907.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_903)))){
  1908. r43append_token(((T0*)ms43_0),((T0*)ms43_786));
  1909. }
  1910.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1985)))){
  1911. r43append_token(((T0*)ms43_0),((T0*)ms43_786));
  1912. }
  1913.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_6162)))){
  1914. r43append_token(((T0*)ms43_0),((T0*)ms43_786));
  1915. }
  1916.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_414)))){
  1917. }
  1918.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_428)))){
  1919. }
  1920.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1620)))){
  1921. r43append_token(((T0*)ms43_0),((T0*)ms43_786));
  1922. }
  1923.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1656)))){
  1924. /*[IF*/
  1925. if((((T0*)ms43_2395))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1926. r43append_token(((T0*)ms43_0),((T0*)ms43_8225));
  1927. }
  1928. else{
  1929. r43append_token(((T0*)ms43_0),((T0*)ms43_786));
  1930. }
  1931. /*FI]*/
  1932. }
  1933.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_891)))){
  1934. r43append_token(((T0*)ms43_0),((T0*)ms43_6726));
  1935. }
  1936. /*FI]*/
  1937. }}}
  1938.  
  1939.  
  1940. void r43add_objects(T43* C,T0* a1,T0* a2,T2 a3){
  1941. T2 _i=0;
  1942. _i=1;
  1943. while (!((_i)>(a3)))
  1944. {
  1945. r43append_token(a1,a2);
  1946. r2append_in(_i,a1);
  1947. r7append(((T7*)a1),r43object_suffix(C));
  1948. _i=(_i)+(1);
  1949. }
  1950. }
  1951.  
  1952.  
  1953. void r43put_c_main_function_exit(T43* C,T0* a1){
  1954. r48put_string(((T48*)a1),((T0*)ms43_6281));
  1955. /*[IF*/
  1956. if((((T0*)ms43_738))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1957. r48put_string(((T48*)a1),((T0*)ms43_5868));
  1958. }
  1959. else{
  1960. r48put_string(((T48*)a1),((T0*)ms43_7392));
  1961. }
  1962. /*FI]*/
  1963. }
  1964.  
  1965.  
  1966. T6 r43backslash_separator(T43* C){
  1967. T6 R=0;
  1968. /*[IF*/
  1969. if((((T0*)ms43_9226))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1970. R=1;
  1971. }
  1972.  else if((((T0*)ms43_690))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1973. R=1;
  1974. }
  1975.  else if((((T0*)ms43_636))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  1976. R=1;
  1977. }
  1978. /*FI]*/
  1979. return R;
  1980. }
  1981.  
  1982.  
  1983. T0* r43get_environment_variable(T43* C,T0* a1){
  1984. T0* R=NULL;
  1985. T8 _p=NULL;
  1986. _p=r7to_external(((T7*)a1));
  1987. R=(NULL==(_p=getenv((char*)_p)))?NULL:((T0*)se_string_from_external_copy((char*)_p));
  1988. return R;
  1989. }
  1990.  
  1991.  
  1992. T6 r43strip_executable(T43* C,T0* a1){
  1993. T6 R=0;
  1994. T0* _output_name=NULL;
  1995. /*[IRF3.3clear*/((((T7*)(((T7*)a1))))->_count)=(0);
  1996. /*]*/
  1997. /*[IF*/
  1998. if(!((/*RF2*/(C)->_no_strip/*16*/))){
  1999. _output_name=(/*RF2*/((T47*)(oBC13run_control))->_output_name/*17*/);
  2000. /*[IF*/
  2001. if((((T0*)ms43_1296))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2002. R=1;
  2003. r7append(((T7*)a1),((T0*)ms43_4524));
  2004. /*[IF*/
  2005. if((_output_name)==((void*)(NULL))){
  2006. r7append(((T7*)a1),((T0*)ms43_2435));
  2007. }
  2008. else{
  2009. r7append(((T7*)a1),_output_name);
  2010. }
  2011. /*FI]*/
  2012. }
  2013.  else if((((T0*)ms43_636))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2014. R=1;
  2015. r7append(((T7*)a1),((T0*)ms43_11004));
  2016. /*[IF*/
  2017. if((_output_name)==((void*)(NULL))){
  2018. r7append(((T7*)a1),((T0*)ms43_2325));
  2019. }
  2020. else{
  2021. r7append(((T7*)a1),_output_name);
  2022. }
  2023. /*FI]*/
  2024. }
  2025. /*FI]*/
  2026. }
  2027. /*FI]*/
  2028. return R;
  2029. }
  2030.  
  2031.  
  2032. void r43add_c_plus_plus_file(T43* C,T0* a1){
  2033. r43append_token(((T0*)ms43_0aa),a1);
  2034. /*[IF*/
  2035. if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_903)))){
  2036. /*[IF*/
  2037. if((/*(IRF4.6item*/((/*RF2*/((T7*)(((T0*)ms43_903)))->_storage/*0*/))[(2)-(1)]/*)*/)==(((T3)'c'))){
  2038. /*[IRF3.5put*/((/*RF2*/((T7*)((/*RF2*/(C)->_c_compiler/*12*/)))->_storage/*0*/))[(2)-(1)]=(((T3)'\53'));
  2039. /*]*/
  2040. /*[IRF3.5put*/((/*RF2*/((T7*)((/*RF2*/(C)->_c_compiler/*12*/)))->_storage/*0*/))[(3)-(1)]=(((T3)'\53'));
  2041. /*]*/
  2042. }
  2043. /*FI]*/
  2044. }
  2045. /*FI]*/
  2046. }
  2047.  
  2048.  
  2049. T0* r43sas_c_compiler_options(T6 a1){
  2050. T0* R=NULL;
  2051. /*[IF*/
  2052. if(r43Scoptions_exists()){
  2053. R=((T0*)ms43_0aaaaaaaa);
  2054. }
  2055. else{
  2056. {T7*n=((T7*)malloc(sizeof(*n))/*12*/);
  2057. *n=M7;
  2058. r7make(n,0);
  2059. R=((T0*)n);
  2060. }
  2061. r7append(((T7*)R),((T0*)ms43_147254));
  2062. /*[IF*/
  2063. if(a1){
  2064. r7append(((T7*)R),((T0*)ms43_12924));
  2065. }
  2066. else{
  2067. r7append(((T7*)R),((T0*)ms43_15200));
  2068. }
  2069. /*FI]*/
  2070. r7append(((T7*)R),((T0*)ms43_24570));
  2071. r7append(((T7*)R),((T0*)ms43_44604));
  2072. }
  2073. /*FI]*/
  2074. return R;
  2075. }
  2076.  
  2077.  
  2078. T6 r43is_c_plus_plus_file_path(T0* a1){
  2079. T6 R=0;
  2080. /*[IF*/
  2081. if(r7has_suffix(((T7*)a1),((T0*)ms13_1476))){
  2082. R=1;
  2083. }
  2084.  else if(r7has_suffix(((T7*)a1),((T0*)ms43_732))){
  2085. R=1;
  2086. }
  2087.  else if(r7has_suffix(((T7*)a1),((T0*)ms43_226))){
  2088. R=1;
  2089. }
  2090. /*FI]*/
  2091. return R;
  2092. }
  2093.  
  2094.  
  2095. void r43put_mark_stack_and_registers(T43* C){
  2096. T0* _architecture=NULL;
  2097. r7copy((T7*)(oBC13tmp_path),(/*RF2*/(C)->_sys_directory/*4*/));
  2098. r7append((T7*)(oBC13tmp_path),((T0*)ms14_404));
  2099. r35sfr_connect_or_exit((T35*)(oBC13echo),oBC13tmp_file_read,oBC13tmp_path);
  2100. _architecture=r35read_word_in((T35*)(oBC13echo),oBC13tmp_file_read);
  2101. r40disconnect((T40*)(oBC13tmp_file_read));
  2102. /*[IF*/
  2103. if(r7is_equal((T7*)(((T0*)ms15_1216)),_architecture)){
  2104. /*[IRF3.6append*/{T0* b1=((T0*)ms43_122271);
  2105. r7append((T7*)(oBC66explanation),b1);
  2106. }/*]*/
  2107. /*[IRF3.6append*/{T0* b1=oBC13tmp_path;
  2108. r7append((T7*)(oBC66explanation),b1);
  2109. }/*]*/
  2110. /*[IRF3.6append*/{T0* b1=((T0*)ms43_129050);
  2111. r7append((T7*)(oBC66explanation),b1);
  2112. }/*]*/
  2113. r66print_as_warning((T66*)(oBC13eh));
  2114. _architecture=((T0*)ms43_12780);
  2115. }
  2116. /*FI]*/
  2117. r7copy((T7*)(oBC13tmp_path),(/*RF2*/(C)->_sys_directory/*4*/));
  2118. r43add_directory(C,oBC13tmp_path,((T0*)ms14_6588));
  2119. r7append((T7*)(oBC13tmp_path),_architecture);
  2120. r35sfr_connect_or_exit((T35*)(oBC13echo),oBC13tmp_file_read,oBC13tmp_path);
  2121. /*[IRF3.6put_c_file*/{T0* b1=oBC13tmp_file_read;
  2122. r325put_file(b1,oBC325out_c);
  2123. }/*]*/
  2124. }
  2125. T0*oBC43system_list=NULL;
  2126.  
  2127.  
  2128. void r43add_output_name(T43* C,T0* a1){
  2129. T0* _output_name=NULL;
  2130. _output_name=(/*RF2*/((T47*)(oBC13run_control))->_output_name/*17*/);
  2131. /*[IF*/
  2132. if((_output_name)==((void*)(NULL))){
  2133. _output_name=r7twin((T7*)((/*RF2*/((T47*)(oBC13run_control))->_root_class/*5*/)));
  2134. r7to_lower(((T7*)_output_name));
  2135. /*[IF*/
  2136. if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_8280)))){
  2137. r43append_token(a1,((T0*)ms43_312));
  2138. r43append_token(a1,_output_name);
  2139. r43add_x_suffix(C,a1);
  2140. }
  2141.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1985)))){
  2142. r43append_token(a1,((T0*)ms43_292));
  2143. r7append(((T7*)a1),_output_name);
  2144. r43add_x_suffix(C,a1);
  2145. }
  2146.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_6162)))){
  2147. r43append_token(a1,((T0*)ms43_292));
  2148. r7append(((T7*)a1),_output_name);
  2149. r43add_x_suffix(C,a1);
  2150. }
  2151.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_4542)))){
  2152. r43append_token(a1,((T0*)ms43_312));
  2153. r7append(((T7*)a1),_output_name);
  2154. r43add_x_suffix(C,a1);
  2155. }
  2156.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_428)))){
  2157. _output_name=r7twin((T7*)((/*RF2*/((T47*)(oBC13run_control))->_root_class/*5*/)));
  2158. r7to_lower(((T7*)_output_name));
  2159. r7append(((T7*)a1),((T0*)ms43_1036));
  2160. r7append(((T7*)a1),_output_name);
  2161. }
  2162.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1620)))){
  2163. r43append_token(a1,((T0*)ms43_312));
  2164. r7append(((T7*)a1),_output_name);
  2165. }
  2166.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1656)))){
  2167. r43append_token(a1,((T0*)ms43_312));
  2168. r7append(((T7*)a1),_output_name);
  2169. }
  2170. /*FI]*/
  2171. }
  2172.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_903)))){
  2173. r43append_token(a1,((T0*)ms43_312));
  2174. r43append_token(a1,_output_name);
  2175. r43add_x_suffix(C,a1);
  2176. }
  2177.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_8280)))){
  2178. r43append_token(a1,((T0*)ms43_312));
  2179. r43append_token(a1,_output_name);
  2180. r43add_x_suffix(C,a1);
  2181. }
  2182.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_396)))){
  2183. r43append_token(a1,((T0*)ms43_312));
  2184. r43append_token(a1,_output_name);
  2185. r43add_x_suffix(C,a1);
  2186. }
  2187.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_4542)))){
  2188. r43append_token(a1,((T0*)ms43_312));
  2189. r43append_token(a1,_output_name);
  2190. r43add_x_suffix(C,a1);
  2191. }
  2192.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1985)))){
  2193. r43append_token(a1,((T0*)ms43_292));
  2194. r7append(((T7*)a1),_output_name);
  2195. r43add_x_suffix(C,a1);
  2196. }
  2197.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_6162)))){
  2198. r43append_token(a1,((T0*)ms43_292));
  2199. r7append(((T7*)a1),_output_name);
  2200. r43add_x_suffix(C,a1);
  2201. }
  2202.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_414)))){
  2203. r43append_token(a1,((T0*)ms43_312));
  2204. r7append(((T7*)a1),_output_name);
  2205. r43add_x_suffix(C,a1);
  2206. }
  2207.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_428)))){
  2208. r7append(((T7*)a1),((T0*)ms43_1036));
  2209. r43append_token(a1,_output_name);
  2210. }
  2211.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1620)))){
  2212. r43append_token(a1,((T0*)ms43_312));
  2213. r43append_token(a1,_output_name);
  2214. r43add_x_suffix(C,a1);
  2215. }
  2216.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1656)))){
  2217. r43append_token(a1,((T0*)ms43_312));
  2218. r43append_token(a1,_output_name);
  2219. r43add_x_suffix(C,a1);
  2220. }
  2221.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_891)))){
  2222. r43append_token(a1,((T0*)ms43_312));
  2223. r43append_token(a1,_output_name);
  2224. r43add_x_suffix(C,a1);
  2225. }
  2226. /*FI]*/
  2227. }
  2228. T0*oBC43id_file_path=NULL;
  2229. int fBC43id_file_path=0;
  2230.  
  2231.  
  2232. T0* r43id_file_path(T43* C){
  2233. if(fBC43id_file_path==0){fBC43id_file_path=1;{
  2234. oBC43id_file_path=r43path_h(C);
  2235. /*[IRF3.6remove_suffix*/{T7* C1=((T7*)oBC43id_file_path);
  2236. T0* b1=((T0*)ms13_300);
  2237. r7remove_last(C1,(/*RF2*/(((T7*)b1))->_count/*4*/));
  2238. }/*]*/
  2239. r7append(((T7*)oBC43id_file_path),((T0*)ms43_753));
  2240. }}
  2241. return oBC43id_file_path;
  2242. }
  2243.  
  2244.  
  2245. T6 r43slash_separator(T43* C){
  2246. T6 R=0;
  2247. /*[IF*/
  2248. if((((T0*)ms43_1296))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2249. R=1;
  2250. }
  2251.  else if((((T0*)ms43_1316))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2252. R=1;
  2253. }
  2254. /*FI]*/
  2255. return R;
  2256. }
  2257.  
  2258.  
  2259. void r43sys_runtime(T43* C,T0* a1,T3 a2){
  2260. r7copy((T7*)(oBC13tmp_path),(/*RF2*/(C)->_sys_directory/*4*/));
  2261. r43add_directory(C,oBC13tmp_path,((T0*)ms14_8883));
  2262. r7append((T7*)(oBC13tmp_path),a1);
  2263. r7extend((T7*)(oBC13tmp_path),((T3)'\56'));
  2264. r7extend((T7*)(oBC13tmp_path),a2);
  2265. r35sfr_connect_or_exit((T35*)(oBC13echo),oBC13tmp_file_read,oBC13tmp_path);
  2266. }
  2267.  
  2268.  
  2269. void r43append_token(T0* a1,T0* a2){
  2270. /*[IF*/
  2271. if(!(/*(IRF4.7is_empty*/((/*RF2*/(((T7*)a2))->_count/*4*/))==(0)/*)*/)){
  2272. /*[IF*/
  2273. if((/*(IRF4.6first*/((/*RF2*/(((T7*)a2))->_storage/*0*/))[0]/*)*/)!=(((T3)'\40'))){
  2274. /*[IF*/
  2275. if(!(/*(IRF4.7is_empty*/((/*RF2*/(((T7*)a1))->_count/*4*/))==(0)/*)*/)){
  2276. r7extend_unless(((T7*)a1),((T3)'\40'));
  2277. }
  2278. /*FI]*/
  2279. }
  2280. /*FI]*/
  2281. r7append(((T7*)a1),a2);
  2282. }
  2283. /*FI]*/
  2284. }
  2285.  
  2286.  
  2287. void r43append_lp_in(T43* C,T0* a1,T0* a2){
  2288. T0* _sed=NULL;
  2289. T2 _i=0;
  2290. r7append(((T7*)a1),((T0*)ms43_11880));
  2291. _i=(/*RF2*/(((T44*)a2))->_lower/*16*/);
  2292. while (!((_i)>((/*RF2*/(((T44*)a2))->_upper/*12*/))))
  2293. {
  2294. r7extend(((T7*)a1),((T3)'\40'));
  2295. r7extend(((T7*)a1),((T3)'\42'));
  2296. r7append(((T7*)a1),r44item(((T44*)a2),_i));
  2297. r7extend(((T7*)a1),((T3)'\42'));
  2298. r7extend(((T7*)a1),((T3)'\n'));
  2299. _i=(_i)+(1);
  2300. }
  2301. r7append(((T7*)a1),((T0*)ms43_33210));
  2302. _sed=r43get_environment_variable(C,((T0*)ms14_18623));
  2303. /*[IF*/
  2304. if((_sed)==((void*)(NULL))){
  2305. r7append(((T7*)a1),((T0*)ms43_5166));
  2306. }
  2307. else{
  2308. r7append(((T7*)a1),((T0*)ms43_132));
  2309. r7append(((T7*)a1),_sed);
  2310. r7append(((T7*)a1),((T0*)ms43_270));
  2311. }
  2312. /*FI]*/
  2313. }
  2314.  
  2315.  
  2316. void r43add_directory(T43* C,T0* a1,T0* a2){
  2317. T3 _last=0;
  2318. /*[IF*/
  2319. if(r43slash_separator(C)){
  2320. r7extend_unless(((T7*)a1),((T3)'\57'));
  2321. r7append(((T7*)a1),a2);
  2322. r7extend_unless(((T7*)a1),((T3)'\57'));
  2323. }
  2324.  else if(r43backslash_separator(C)){
  2325. r7extend_unless(((T7*)a1),((T3)'\134'));
  2326. r7append(((T7*)a1),a2);
  2327. r7extend_unless(((T7*)a1),((T3)'\134'));
  2328. }
  2329.  else if((((T0*)ms43_12816))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2330. r7extend_unless(((T7*)a1),((T3)'\72'));
  2331. r7append(((T7*)a1),a2);
  2332. r7extend_unless(((T7*)a1),((T3)'\72'));
  2333. }
  2334.  else if((((T0*)ms43_2395))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2335. _last=r7last(((T7*)a1));
  2336. /*[IF*/
  2337. if(((_last)!=(((T3)'\57')))&&((_last)!=(((T3)'\72')))){
  2338. r7extend_unless(((T7*)a1),((T3)'\57'));
  2339. }
  2340. /*FI]*/
  2341. r7append(((T7*)a1),a2);
  2342. r7extend_unless(((T7*)a1),((T3)'\57'));
  2343. }
  2344.  else if((((T0*)ms43_738))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2345. r7extend_unless(((T7*)a1),((T3)'\135'));
  2346. r7remove_last(((T7*)a1),1);
  2347. r7extend_unless(((T7*)a1),((T3)'\56'));
  2348. r7append(((T7*)a1),a2);
  2349. r7extend_unless(((T7*)a1),((T3)'\135'));
  2350. }
  2351. else{
  2352. }
  2353. /*FI]*/
  2354. }
  2355.  
  2356.  
  2357. void r43parent_directory(T43* C,T0* a1){
  2358. /*[IF*/
  2359. if(r43slash_separator(C)){
  2360. r7remove_last(((T7*)a1),1);
  2361. while (!((/*(IRF4.7is_empty*/((/*RF2*/(((T7*)a1))->_count/*4*/))==(0)/*)*/)||((r7last(((T7*)a1)))==(((T3)'\57')))))
  2362. {
  2363. r7remove_last(((T7*)a1),1);
  2364. }
  2365. }
  2366.  else if(r43backslash_separator(C)){
  2367. r7remove_last(((T7*)a1),1);
  2368. while (!((/*(IRF4.7is_empty*/((/*RF2*/(((T7*)a1))->_count/*4*/))==(0)/*)*/)||((r7last(((T7*)a1)))==(((T3)'\134')))))
  2369. {
  2370. r7remove_last(((T7*)a1),1);
  2371. }
  2372. }
  2373.  else if((((T0*)ms43_12816))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2374. r7remove_last(((T7*)a1),1);
  2375. while (!((/*(IRF4.7is_empty*/((/*RF2*/(((T7*)a1))->_count/*4*/))==(0)/*)*/)||((r7last(((T7*)a1)))==(((T3)'\72')))))
  2376. {
  2377. r7remove_last(((T7*)a1),1);
  2378. }
  2379. }
  2380.  else if((((T0*)ms43_2395))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2381. r7remove_last(((T7*)a1),1);
  2382. while (!((/*(IRF4.7is_empty*/((/*RF2*/(((T7*)a1))->_count/*4*/))==(0)/*)*/)||(r7has(ms43_210,r7last(((T7*)a1))))))
  2383. {
  2384. r7remove_last(((T7*)a1),1);
  2385. }
  2386. }
  2387.  else if((((T0*)ms43_738))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2388. r7remove_last(((T7*)a1),1);
  2389. while (!((/*(IRF4.7is_empty*/((/*RF2*/(((T7*)a1))->_count/*4*/))==(0)/*)*/)||((r7last(((T7*)a1)))==(((T3)'\56')))))
  2390. {
  2391. r7remove_last(((T7*)a1),1);
  2392. }
  2393. r7remove_last(((T7*)a1),1);
  2394. r7extend(((T7*)a1),((T3)'\135'));
  2395. }
  2396. else{
  2397. }
  2398. /*FI]*/
  2399. }
  2400.  
  2401.  
  2402. T0* r43path_h(T43* C){
  2403. T0* R=NULL;
  2404. R=r7twin((T7*)((/*RF2*/((T47*)(oBC13run_control))->_root_class/*5*/)));
  2405. r7to_lower(((T7*)R));
  2406. /*[IF*/
  2407. if((((T0*)ms43_690))==((void*)((/*RF2*/(C)->_system_name/*0*/)))){
  2408. while (!(((/*RF2*/(((T7*)R))->_count/*4*/))<=(4)))
  2409. {
  2410. r7remove_last(((T7*)R),1);
  2411. }
  2412. }
  2413. /*FI]*/
  2414. r7append(((T7*)R),((T0*)ms13_300));
  2415. return R;
  2416. }
  2417.  
  2418.  
  2419. void r43split_mode_linker_command(T43* C,T0* a1,T0* a2,T2 a3){
  2420. /*[IRF3.3clear*/((((T7*)(((T7*)a1))))->_count)=(0);
  2421. /*]*/
  2422. /*[IF*/
  2423. if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_903)))){
  2424. r7append(((T7*)a1),((T0*)ms43_903));
  2425. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2426. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2427. r43append_token(a1,((T0*)ms43_0aaaaa));
  2428. r43add_output_name(C,a1);
  2429. r43add_objects(C,a1,a2,a3);
  2430. r43append_token(a1,((T0*)ms43_0aaa));
  2431. r43append_token(a1,((T0*)ms43_0aa));
  2432. r43append_token(a1,((T0*)ms43_0a));
  2433. r43append_token(a1,((T0*)ms43_0));
  2434. }
  2435.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_8280)))){
  2436. r43external_c_files_for_lcc_win32(C,a1);
  2437. r7append(((T7*)a1),((T0*)ms43_6996));
  2438. /*[IF*/
  2439. if(!((/*RF2*/(C)->_no_strip/*16*/))){
  2440. r43append_token(a1,((T0*)ms43_320));
  2441. }
  2442. /*FI]*/
  2443. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2444. r43add_output_name(C,a1);
  2445. r43add_objects(C,a1,a2,a3);
  2446. r43append_token(a1,((T0*)ms43_0a));
  2447. r43append_token(a1,((T0*)ms43_0));
  2448. }
  2449.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_396)))){
  2450. r7append(((T7*)a1),((T0*)ms43_396));
  2451. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2452. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2453. r43append_token(a1,((T0*)ms43_0aaaaa));
  2454. r43add_output_name(C,a1);
  2455. r43add_objects(C,a1,a2,a3);
  2456. r43append_token(a1,((T0*)ms43_0aaa));
  2457. r43append_token(a1,((T0*)ms43_0a));
  2458. r43append_token(a1,((T0*)ms43_0));
  2459. }
  2460.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_4542)))){
  2461. r7append(((T7*)a1),((T0*)ms43_2745));
  2462. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2463. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2464. r43append_token(a1,((T0*)ms43_0aaaaa));
  2465. r43add_output_name(C,a1);
  2466. r43add_objects(C,a1,a2,a3);
  2467. r43append_token(a1,((T0*)ms43_0aaa));
  2468. r43append_token(a1,((T0*)ms43_0a));
  2469. r43append_token(a1,((T0*)ms43_0));
  2470. }
  2471.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1985)))){
  2472. r7append(((T7*)a1),((T0*)ms43_1985));
  2473. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2474. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2475. r43append_token(a1,((T0*)ms43_0aaaaa));
  2476. r43add_output_name(C,a1);
  2477. r43add_objects(C,a1,a2,a3);
  2478. r43append_token(a1,((T0*)ms43_0aaa));
  2479. r43append_token(a1,((T0*)ms43_0a));
  2480. r43append_token(a1,((T0*)ms43_0));
  2481. r43add_lib_math(C);
  2482. }
  2483.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_6162)))){
  2484. r7append(((T7*)a1),((T0*)ms43_6162));
  2485. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2486. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2487. r43append_token(a1,((T0*)ms43_0aaaaa));
  2488. r43add_output_name(C,a1);
  2489. r43add_objects(C,a1,a2,a3);
  2490. r43append_token(a1,((T0*)ms43_0aaa));
  2491. r43append_token(a1,((T0*)ms43_0a));
  2492. r43append_token(a1,((T0*)ms43_0));
  2493. r43add_lib_math(C);
  2494. }
  2495.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_414)))){
  2496. r7append(((T7*)a1),((T0*)ms43_414));
  2497. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2498. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2499. r43append_token(a1,((T0*)ms43_0aaaaa));
  2500. r43add_output_name(C,a1);
  2501. r43add_objects(C,a1,a2,a3);
  2502. r43append_token(a1,((T0*)ms43_0aaa));
  2503. r43append_token(a1,((T0*)ms43_0a));
  2504. r43append_token(a1,((T0*)ms43_0));
  2505. r43add_lib_math(C);
  2506. }
  2507.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_428)))){
  2508. r7append(((T7*)a1),((T0*)ms43_428));
  2509. r43append_token(a1,r43sas_c_compiler_options(1));
  2510. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2511. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2512. r43append_token(a1,a2);
  2513. r7append(((T7*)a1),((T0*)ms43_58212));
  2514. r43append_token(a1,((T0*)ms43_0aaa));
  2515. r43append_token(a1,((T0*)ms43_0a));
  2516. r43append_token(a1,((T0*)ms43_0));
  2517. r43add_output_name(C,a1);
  2518. /*[IF*/
  2519. if(!((/*RF2*/(C)->_no_strip/*16*/))){
  2520. r7append(((T7*)a1),((T0*)ms43_17413));
  2521. }
  2522. /*FI]*/
  2523. }
  2524.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1620)))){
  2525. r7append(((T7*)a1),((T0*)ms43_894));
  2526. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2527. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2528. r43append_token(a1,((T0*)ms43_0aaaaa));
  2529. r43add_output_name(C,a1);
  2530. r43add_objects(C,a1,a2,a3);
  2531. r43append_token(a1,((T0*)ms43_0aaa));
  2532. r43append_token(a1,((T0*)ms43_0a));
  2533. r43append_token(a1,((T0*)ms43_0));
  2534. /*[IF*/
  2535. if((/*RF2*/(C)->_no_strip/*16*/)){
  2536. r43append_token(a1,((T0*)ms43_3786));
  2537. }
  2538. /*FI]*/
  2539. r43add_lib_math(C);
  2540. }
  2541.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_1656)))){
  2542. r7append(((T7*)a1),((T0*)ms43_434));
  2543. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2544. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2545. r43append_token(a1,((T0*)ms43_0aaaaa));
  2546. r43add_output_name(C,a1);
  2547. r43add_lib_math(C);
  2548. r43add_objects(C,a1,a2,a3);
  2549. r43append_token(a1,((T0*)ms43_0aaa));
  2550. r43append_token(a1,((T0*)ms43_0a));
  2551. r43append_token(a1,((T0*)ms43_0));
  2552. }
  2553.  else if(((/*RF2*/(C)->_c_compiler/*12*/))==((void*)(((T0*)ms43_891)))){
  2554. r7append(((T7*)a1),((T0*)ms43_891));
  2555. r43append_token(a1,((T0*)ms43_0aaaaaaa));
  2556. r43append_token(a1,((T0*)ms43_0aaaaaa));
  2557. r43append_token(a1,((T0*)ms43_0aaaaa));
  2558. r43add_output_name(C,a1);
  2559. r43add_objects(C,a1,a2,a3);
  2560. r43append_token(a1,((T0*)ms43_0aaa));
  2561. r43append_token(a1,((T0*)ms43_0aa));
  2562. r43append_token(a1,((T0*)ms43_0a));
  2563. r43append_token(a1,((T0*)ms43_0));
  2564. }
  2565. /*FI]*/
  2566. }
  2567.  
  2568.  
  2569. void r43read_loading_path_in(T43* C,T0* a1){
  2570. r43loading_path_add(C,a1,((T0*)ms43_18029),1);
  2571. r7copy((T7*)(oBC13tmp_path),(/*RF2*/(C)->_sys_directory/*4*/));
  2572. r7append((T7*)(oBC13tmp_path),((T0*)ms43_8478));
  2573. r7append((T7*)(oBC13tmp_path),(/*RF2*/(C)->_system_name/*0*/));
  2574. r43loading_path_add(C,a1,oBC13tmp_path,1);
  2575. }
  2576.  
  2577.  
  2578. void r119compile_to_c_old(T119* C){
  2579. X104compile_to_c_old((/*RF2*/(C)->_target/*4*/));
  2580. /*[IF*/
  2581. {/*AT*//*SSPRF3*//*X139compile_to_c_old*/r139compile_to_c_old((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2582. }
  2583. /*FI]*/
  2584. }
  2585.  
  2586.  
  2587. T0* r119runnable_expression(T0* a1,T0* a2){
  2588. T0* R=NULL;
  2589. R=X104to_runnable(a1,a2);
  2590. /*[IF*/
  2591. if((R)==((void*)(NULL))){
  2592. {T68 se_tmp0;
  2593. r66add_position((*(se_tmp0=X104start_position(a1),&se_tmp0)));
  2594. }
  2595. r119fatal_error(((T0*)ms116_16290));
  2596. }
  2597. /*FI]*/
  2598. return R;
  2599. }
  2600.  
  2601.  
  2602. void r119run_feature_has_result(T119* C){
  2603. /*[IF*/
  2604. if((X334result_type((/*RF2*/(C)->_run_feature/*16*/)))==((void*)(NULL))){
  2605. {T68 se_tmp0;
  2606. r66add_position((*(se_tmp0=X334start_position((/*RF2*/(C)->_run_feature/*16*/)),&se_tmp0)));
  2607. }
  2608. r66add_position((/*RF2*/((T129*)((/*RF2*/(C)->_feature_name/*12*/)))->_start_position/*4*/));
  2609. r119fatal_error(((T0*)ms115_53215));
  2610. }
  2611. /*FI]*/
  2612. }
  2613.  
  2614.  
  2615. void r119run_feature_match(T119* C,T0* a1){
  2616. r119run_feature_has_result(C);
  2617. X139match_with((/*RF2*/(C)->_arguments/*8*/),(/*RF2*/(C)->_run_feature/*16*/),a1);
  2618. }
  2619.  
  2620.  
  2621. T0* r119add_comment(T119* C,T0* a1){
  2622. T0* R=NULL;
  2623. /*[IF*/
  2624. if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)==(0))){
  2625. R=((T0*)(C));
  2626. }
  2627. else{
  2628. {T229*n=((T229*)malloc(sizeof(*n))/*12*/);
  2629. *n=M229;
  2630. r229make(n,(T0*)C,a1);
  2631. R=((T0*)n);
  2632. }
  2633. }
  2634. /*FI]*/
  2635. return R;
  2636. }
  2637.  
  2638.  
  2639. void r119with(T119* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  2640. (/*SFN*/C->_target)=a1;
  2641. (/*SFN*/C->_feature_name)=a2;
  2642. (/*SFN*/C->_arguments)=a3;
  2643. (/*SFN*/C->_run_feature)=a4;
  2644. r119run_feature_match(C,a5);
  2645. }
  2646.  
  2647.  
  2648. void r119mapping_c_target(T119* C,T0* a1){
  2649. T0* _actual_type=NULL;
  2650. T6 _flag=0;
  2651. _flag=r325call_invariant_start(a1);
  2652. _actual_type=X52run_type(r119result_type(C));
  2653. /*[IF*/
  2654. if(X52is_reference(_actual_type)){
  2655. /*[IF*/
  2656. if(X52is_reference(a1)){
  2657. X52mapping_cast(a1);
  2658. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2659. T3 b1=((T3)'\50');
  2660. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2661. }/*]*/
  2662. /*]*/
  2663. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T119* C1=C;
  2664. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  2665. }/*]*/
  2666. /*]*/
  2667. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2668. T3 b1=((T3)'\51');
  2669. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2670. }/*]*/
  2671. /*]*/
  2672. }
  2673. else{
  2674. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T119* C1=C;
  2675. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  2676. }/*]*/
  2677. /*]*/
  2678. }
  2679. /*FI]*/
  2680. }
  2681. else{
  2682. /*[IF*/
  2683. if(X52is_reference(a1)){
  2684. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T119* C1=C;
  2685. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  2686. }/*]*/
  2687. /*]*/
  2688. }
  2689. else{
  2690. /*[IF*/
  2691. if(X52need_c_struct(a1)){
  2692. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2693. T3 b1=((T3)'\46');
  2694. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2695. }/*]*/
  2696. /*]*/
  2697. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2698. T3 b1=((T3)'\50');
  2699. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2700. }/*]*/
  2701. /*]*/
  2702. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T119* C1=C;
  2703. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  2704. }/*]*/
  2705. /*]*/
  2706. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  2707. T3 b1=((T3)'\51');
  2708. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2709. }/*]*/
  2710. /*]*/
  2711. }
  2712. else{
  2713. /*[IRF3.4compile_to_c*//*[IRF3.6call_proc_call_c2c*/{T119* C1=C;
  2714. r325put_cpc((T325*)(oBC13cpp),(T0*)C1);
  2715. }/*]*/
  2716. /*]*/
  2717. }
  2718. /*FI]*/
  2719. }
  2720. /*FI]*/
  2721. }
  2722. /*FI]*/
  2723. /*[IF*/
  2724. if(_flag){
  2725. /*[IRF3.2call_invariant_end*//*[IRF3.6put_character*/{T48* C1=(T48*)(oBC325out_c);
  2726. T3 b1=((T3)'\51');
  2727. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  2728. }/*]*/
  2729. /*]*/
  2730. }
  2731. /*FI]*/
  2732. }
  2733.  
  2734.  
  2735. void r119afd_check(T119* C){
  2736. T0* _running=NULL;
  2737. T0* _rc=NULL;
  2738. /*[IF*/
  2739. if(((/*RF2*/(C)->_run_feature/*16*/))!=((void*)(NULL))){
  2740. _rc=X52run_class(X104result_type((/*RF2*/(C)->_target/*4*/)));
  2741. _running=(/*RF2*/(((T50*)_rc))->_running/*9*/);
  2742. /*[IF*/
  2743. if((_running)==((void*)(NULL))){
  2744. }
  2745.  else if((r53count(((T53*)_running)))>(1)){
  2746. r351update((/*RF2*/(C)->_target/*4*/),(/*RF2*/(C)->_run_feature/*16*/));
  2747. }
  2748. /*FI]*/
  2749. }
  2750. /*FI]*/
  2751. X104afd_check((/*RF2*/(C)->_target/*4*/));
  2752. /*[IF*/
  2753. {/*AT*//*SSPRF3*//*X139afd_check*/r139afd_check((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2754. }
  2755. /*FI]*/
  2756. }
  2757.  
  2758.  
  2759. void r119c_declare_for_old(T119* C){
  2760. X104c_declare_for_old((/*RF2*/(C)->_target/*4*/));
  2761. /*[IF*/
  2762. {/*AT*//*SSPRF3*//*X139c_declare_for_old*/r139c_declare_for_old((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2763. }
  2764. /*FI]*/
  2765. }
  2766.  
  2767.  
  2768. void r119collect_c_tmp(T119* C){
  2769. /*[IF*/
  2770. if(((/*RF2*/(C)->_run_feature/*16*/))!=((void*)(NULL))){
  2771. X334collect_c_tmp((/*RF2*/(C)->_run_feature/*16*/));
  2772. }
  2773. /*FI]*/
  2774. X104collect_c_tmp((/*RF2*/(C)->_target/*4*/));
  2775. /*[IF*/
  2776. if(((/*RF2*/(C)->_arguments/*8*/))!=((void*)(NULL))){
  2777. /*SSPRF3*//*X139collect_c_tmp*/r139collect_c_tmp((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2778. }
  2779. /*FI]*/
  2780. }
  2781.  
  2782.  
  2783. T0* r119operator(void){
  2784. T0* R=NULL;
  2785. R=((T0*)ms15_8211);
  2786. return R;
  2787. }
  2788.  
  2789.  
  2790. T6 r119use_current(T119* C){
  2791. T6 R=0;
  2792. /*[IF*/
  2793. {/*AT*/R=/*SSFRF4*//*X139use_current*/r139use_current((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  2794. }
  2795. /*FI]*/
  2796. /*[IF*/
  2797. if(R){
  2798. }
  2799.  else if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  2800. R=X334use_current((/*RF2*/(C)->_run_feature/*16*/));
  2801. }
  2802. else{
  2803. R=X104use_current((/*RF2*/(C)->_target/*4*/));
  2804. }
  2805. /*FI]*/
  2806. return R;
  2807. }
  2808.  
  2809.  
  2810. T0* r119runnable_args(T0* a1,T0* a2){
  2811. T0* R=NULL;
  2812. R=X139to_runnable(a1,a2);
  2813. /*[IF*/
  2814. if((R)==((void*)(NULL))){
  2815. {T68 se_tmp0;
  2816. r66add_position((*(se_tmp0=X139start_position(a1),&se_tmp0)));
  2817. }
  2818. r119fatal_error(((T0*)ms14_12870));
  2819. }
  2820. /*FI]*/
  2821. return R;
  2822. }
  2823.  
  2824.  
  2825. T0* r119to_runnable(T119* C,T0* a1){
  2826. T0* R=NULL;
  2827. T0* _target_type=NULL;
  2828. T0* _argument_type=NULL;
  2829. T0* _rf=NULL;
  2830. T0* _a=NULL;
  2831. T0* _t=NULL;
  2832. _t=r119runnable_expression((/*RF2*/(C)->_target/*4*/),a1);
  2833. _a=r119runnable_args((/*RF2*/(C)->_arguments/*8*/),a1);
  2834. _target_type=X104result_type(_t);
  2835. _argument_type=X104result_type(r119arg1(C));
  2836. /*[IF*/
  2837. if(X52is_real(_argument_type)){
  2838. /*[IF*/
  2839. if(X52is_integer(_target_type)){
  2840. _t=r341implicit_cast((T341*)(oBC13conversion_handler),_t,_argument_type);
  2841. }
  2842. /*FI]*/
  2843. }
  2844.  else if(X52is_double(_argument_type)){
  2845. /*[IF*/
  2846. if((X52is_integer(_target_type))||(X52is_real(_target_type))){
  2847. _t=r341implicit_cast((T341*)(oBC13conversion_handler),_t,_argument_type);
  2848. }
  2849. /*FI]*/
  2850. }
  2851. /*FI]*/
  2852. _rf=r119run_feature_for(C,_t,a1);
  2853. /*[IF*/
  2854. if(((/*RF2*/(C)->_run_feature/*16*/))==((void*)(NULL))){
  2855. (/*SFN*/C->_target)=_t;
  2856. (/*SFN*/C->_arguments)=_a;
  2857. (/*SFN*/C->_run_feature)=_rf;
  2858. r119run_feature_match(C,a1);
  2859. R=((T0*)(C));
  2860. }
  2861.  else if(((_t)==((void*)((/*RF2*/(C)->_target/*4*/))))&&((_a)==((void*)((/*RF2*/(C)->_arguments/*8*/))))){
  2862. R=((T0*)(C));
  2863. }
  2864. else{
  2865. {T119*n=((T119*)malloc(sizeof(*n))/*24*/);
  2866. *n=M119;
  2867. r119with(n,_t,(/*RF2*/(C)->_feature_name/*12*/),_a,_rf,a1);
  2868. R=((T0*)n);
  2869. }
  2870. }
  2871. /*FI]*/
  2872. return R;
  2873. }
  2874.  
  2875.  
  2876. T2 r119to_integer(T119* C){
  2877. T2 R=0;
  2878. r119error(/*(IRF4.6start_position*/(/*RF2*/(((T129*)((/*RF2*/(C)->_feature_name/*12*/))))->_start_position/*4*/)/*)*/,((T0*)ms14_45441));
  2879. return R;
  2880. }
  2881.  
  2882.  
  2883. T6 r119is_static(T119* C){
  2884. T6 R=0;
  2885. /*[IF*/
  2886. if(X52is_boolean(X104result_type((/*RF2*/(C)->_target/*4*/)))){
  2887. /*[IF*/
  2888. if(X104is_static((/*RF2*/(C)->_target/*4*/))){
  2889. /*[IF*/
  2890. if((X104static_value((/*RF2*/(C)->_target/*4*/)))==(1)){
  2891. R=1;
  2892. (/*SFN*/C->_static_value_mem)=1;
  2893. }
  2894. else{
  2895. R=X104is_static(r119arg1(C));
  2896. /*[IF*/
  2897. if(R){
  2898. (/*SFN*/C->_static_value_mem)=X104static_value(r119arg1(C));
  2899. }
  2900. /*FI]*/
  2901. }
  2902. /*FI]*/
  2903. }
  2904. /*FI]*/
  2905. }
  2906. /*FI]*/
  2907. return R;
  2908. }
  2909.  
  2910.  
  2911. void r119finalize(T119* C){
  2912. T0* _rf=NULL;
  2913. T0* _rc=NULL;
  2914. _rf=(/*RF2*/(C)->_run_feature/*16*/);
  2915. _rc=X52run_class(/*SSWARF2*//*X334current_type*/(/*RF2*/(((T368*)_rf))->_current_type/*8*/));
  2916. (/*SFN*/C->_run_feature)=r50dynamic((T50*)(/*(IRF4.6first*/((/*RF2*/((T53*)((/*RF2*/(((T50*)_rc))->_running/*9*/)))->_storage/*0*/))[0]/*)*/),_rf);
  2917. }
  2918.  
  2919.  
  2920. void r119error(T68 a1,T0* a2){
  2921. r66add_position(a1);
  2922. /*[IRF3.6append*/{T0* b1=a2;
  2923. r7append((T7*)(oBC66explanation),b1);
  2924. }/*]*/
  2925. r66print_as_error((T66*)(oBC13eh));
  2926. }
  2927.  
  2928.  
  2929. T0* r119result_type(T119* C){
  2930. T0* R=NULL;
  2931. T0* _tla=NULL;
  2932. R=X334result_type((/*RF2*/(C)->_run_feature/*16*/));
  2933. /*[IF*/
  2934. if(X52is_like_current(R)){
  2935. R=/*SSWARF2*//*X334current_type*/(/*RF2*/((T368*)((/*RF2*/(C)->_run_feature/*16*/)))->_current_type/*8*/);
  2936. }
  2937. else{
  2938. _tla=R;
  2939. if(NULL!=(_tla)){
  2940. switch(((T0*)_tla)->id){
  2941. case 257:
  2942. break;
  2943. default:
  2944. _tla=NULL;
  2945. }
  2946. }/*[IF*/
  2947. if((_tla)!=((void*)(NULL))){
  2948. R=X52run_type(X104result_type(r119arg1(C)));
  2949. }
  2950. /*FI]*/
  2951. }
  2952. /*FI]*/
  2953. return R;
  2954. }
  2955.  
  2956.  
  2957. T0* r119arg1(T119* C){
  2958. T0* R=NULL;
  2959. R=/*SSFRF4*//*X139first*//*(IRF4.3first*/(/*RF2*/((T139*)((/*RF2*/(C)->_arguments/*8*/)))->_first_one/*4*/)/*)*/;
  2960. return R;
  2961. }
  2962.  
  2963.  
  2964. T6 r119call_proc_call_stupid_switch(T119* C,T0* a1){
  2965. T6 R=0;
  2966. /*[IF*/
  2967. if(((/*RF2*/(C)->_arguments/*8*/))==((void*)(NULL))){
  2968. R=1;
  2969. }
  2970. else{
  2971. R=/*SSFRF4*//*X139stupid_switch*/r139stupid_switch((T139*)((/*RF2*/(C)->_arguments/*8*/)),a1);
  2972. }
  2973. /*FI]*/
  2974. /*[IF*/
  2975. if(R){
  2976. /*[IF*/
  2977. if(X104is_current((/*RF2*/(C)->_target/*4*/))){
  2978. /*[IF*/
  2979. if(r49same_base_feature((/*RF2*/(C)->_run_feature/*16*/),a1)){
  2980. R=(X334stupid_switch((/*RF2*/(C)->_run_feature/*16*/),a1))!=((void*)(NULL));
  2981. }
  2982. else{
  2983. R=0;
  2984. }
  2985. /*FI]*/
  2986. }
  2987. else{
  2988. R=X104stupid_switch((/*RF2*/(C)->_target/*4*/),a1);
  2989. }
  2990. /*FI]*/
  2991. }
  2992. /*FI]*/
  2993. return R;
  2994. }
  2995.  
  2996.  
  2997. T0* r119run_feature_for(T119* C,T0* a1,T0* a2){
  2998. T0* R=NULL;
  2999. T0* _bc=NULL;
  3000. T0* _rt=NULL;
  3001. T0* _rc=NULL;
  3002. _rt=X104result_type(a1);
  3003. /*[IF*/
  3004. if((_rt)!=((void*)(NULL))){
  3005. _rc=X52run_class(_rt);
  3006. /*[IF*/
  3007. if((_rc)!=((void*)(NULL))){
  3008. _bc=r50base_class(((T50*)_rc));
  3009. R=r51run_feature_for(((T51*)_bc),_rc,a1,(/*RF2*/(C)->_feature_name/*12*/),a2);
  3010. }
  3011. /*FI]*/
  3012. }
  3013. /*FI]*/
  3014. /*[IF*/
  3015. if((R)==((void*)(NULL))){
  3016. r66add_position((/*RF2*/((T129*)((/*RF2*/(C)->_feature_name/*12*/)))->_start_position/*4*/));
  3017. /*[IRF3.6append*/{T0* b1=((T0*)ms116_39025);
  3018. r7append((T7*)(oBC66explanation),b1);
  3019. }/*]*/
  3020. r66print_as_fatal_error((T66*)(oBC13eh));
  3021. }
  3022. /*FI]*/
  3023. return R;
  3024. }
  3025.  
  3026.  
  3027. T0* r119static_result_base_class(T119* C){
  3028. T0* R=NULL;
  3029. T0* _cn=NULL;
  3030. T0* _rt=NULL;
  3031. T0* _e_feature=NULL;
  3032. T0* _bc=NULL;
  3033. _bc=X104static_result_base_class((/*RF2*/(C)->_target/*4*/));
  3034. /*[IF*/
  3035. if((_bc)!=((void*)(NULL))){
  3036. _e_feature=r51e_feature(((T51*)_bc),(/*RF2*/(C)->_feature_name/*12*/));
  3037. /*[IF*/
  3038. if((_e_feature)!=((void*)(NULL))){
  3039. _rt=X90result_type(_e_feature);
  3040. /*[IF*/
  3041. if((_rt)!=((void*)(NULL))){
  3042. _cn=X52static_base_class_name(_rt);
  3043. /*[IF*/
  3044. if((_cn)!=((void*)(NULL))){
  3045. R=r61base_class(((T61*)_cn));
  3046. }
  3047. /*FI]*/
  3048. }
  3049. /*FI]*/
  3050. }
  3051. /*FI]*/
  3052. }
  3053. /*FI]*/
  3054. return R;
  3055. }
  3056.  
  3057.  
  3058. void r119make(T119* C,T0* a1,T68 a2,T0* a3){
  3059. (/*SFN*/C->_target)=a1;
  3060. {T129*n=((T129*)malloc(sizeof(*n))/*20*/);
  3061. *n=M129;
  3062. r129make(n,r119operator(),a2);
  3063. (/*SFN*/C->_feature_name)=((T0*)n);
  3064. }
  3065. {T139*n=((T139*)malloc(sizeof(*n))/*16*/);
  3066. *n=M139;
  3067. /*[IRF3.3make_1*/((((T139*)(n)))->_first_one)=(a3);
  3068. /*]*/
  3069. (/*SFN*/C->_arguments)=((T0*)n);
  3070. }
  3071. }
  3072.  
  3073.  
  3074. void r119fatal_error(T0* a1){
  3075. /*[IRF3.6append*/{T0* b1=a1;
  3076. r7append((T7*)(oBC66explanation),b1);
  3077. }/*]*/
  3078. r66print_as_fatal_error((T66*)(oBC13eh));
  3079. }
  3080.  
  3081.  
  3082. void r119assertion_check(T119* C,T3 a1){
  3083. /*[IF*/
  3084. if((a1)==(((T3)'R'))){
  3085. X334vape_check_from((/*RF2*/(C)->_run_feature/*16*/),/*(IRF4.6start_position*/(/*RF2*/(((T129*)((/*RF2*/(C)->_feature_name/*12*/))))->_start_position/*4*/)/*)*/);
  3086. }
  3087. /*FI]*/
  3088. X104assertion_check((/*RF2*/(C)->_target/*4*/),a1);
  3089. X104assertion_check(r119arg1(C),a1);
  3090. }
  3091.  
  3092.  
  3093. T6 r119stupid_switch(T119* C,T0* a1){
  3094. T6 R=0;
  3095. R=r119call_proc_call_stupid_switch(C,a1);
  3096. /*[IF*/
  3097. if(R){
  3098. R=!(X52is_native_array(r119result_type(C)));
  3099. }
  3100. /*FI]*/
  3101. return R;
  3102. }
  3103.  
  3104.  
  3105. void r274standard_c_object_model(T274* C){
  3106. T0* _rc=NULL;
  3107. T2 _mem_id=0;
  3108. _rc=r274run_class(C);
  3109. _mem_id=(/*RF2*/(((T50*)_rc))->_id/*4*/);
  3110. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  3111. /*]*/
  3112. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  3113. r2append_in(_mem_id,((T0*)ms52_783104));
  3114. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  3115. r7extend((T7*)(((T0*)ms52_783104)),((T3)'M'));
  3116. r2append_in(_mem_id,((T0*)ms52_783104));
  3117. r325put_extern7((T325*)(oBC13cpp),((T0*)ms52_783104));
  3118. /*[IRF3.3swap_on_c*/((((T325*)((T325*)(oBC13cpp))))->_current_out)=(oBC325out_c);
  3119. /*]*/
  3120. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  3121. /*]*/
  3122. r50c_object_model_in(((T50*)_rc),((T0*)ms52_783104));
  3123. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  3124. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  3125. /*]*/
  3126. r325swap_on_h((T325*)(oBC13cpp));
  3127. }
  3128.  
  3129.  
  3130. T0* r274generic_list(T274* C){
  3131. T0* R=NULL;
  3132. R=X52generic_list((/*RF2*/(C)->_mapped/*16*/));
  3133. return R;
  3134. }
  3135.  
  3136.  
  3137. T6 r274need_gc_mark_function(T274* C){
  3138. T6 R=0;
  3139. R=r50gc_mark_to_follow((T50*)(r274run_class(C)));
  3140. return R;
  3141. }
  3142.  
  3143.  
  3144. void r274standard_c_print_function(T274* C){
  3145. /*[IF*/
  3146. if(r47no_check((T47*)(oBC13run_control))){
  3147. r50c_print_function((T50*)(r274run_class(C)));
  3148. }
  3149. /*FI]*/
  3150. }
  3151.  
  3152.  
  3153. T2 r274id(T274* C){
  3154. T2 R=0;
  3155. R=(/*RF2*/((T50*)(r274run_class(C)))->_id/*4*/);
  3156. return R;
  3157. }
  3158.  
  3159.  
  3160. void r274cast_to_ref(T274* C){
  3161. X52cast_to_ref((/*RF2*/(C)->_run_type/*24*/));
  3162. }
  3163.  
  3164.  
  3165. void r274c_header_pass3(T274* C){
  3166. /*[IF*/
  3167. if(r274need_c_struct(C)){
  3168. /*[IF*/
  3169. if(((/*RF2*/(C)->_run_type/*24*/))==((void*)(C))){
  3170. r274standard_c_struct(C);
  3171. }
  3172. else{
  3173. X52c_header_pass3((/*RF2*/(C)->_run_type/*24*/));
  3174. }
  3175. /*FI]*/
  3176. r274standard_c_object_model(C);
  3177. }
  3178. /*FI]*/
  3179. }
  3180.  
  3181.  
  3182. void r274gc_call_new_in(T274* C,T0* a1){
  3183. r7append(((T7*)a1),((T0*)ms14_990));
  3184. r2append_in(r274id(C),a1);
  3185. r7extend(((T7*)a1),((T3)'\50'));
  3186. r7extend(((T7*)a1),((T3)'\51'));
  3187. }
  3188.  
  3189.  
  3190. void r274standard_c_struct(T274* C){
  3191. T0* _t=NULL;
  3192. T0* _a=NULL;
  3193. T2 _mem_id=0;
  3194. T2 _i=0;
  3195. T0* _wa=NULL;
  3196. _mem_id=r274id(C);
  3197. _wa=r50writable_attributes((T50*)(r274run_class(C)));
  3198. r7copy((T7*)(((T0*)ms52_783104)),((T0*)ms14_5495));
  3199. r7extend((T7*)(((T0*)ms52_783104)),((T3)'S'));
  3200. r2append_in(_mem_id,((T0*)ms52_783104));
  3201. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\173'));
  3202. /*[IF*/
  3203. /*AF*//*AE*/
  3204. /*FI]*/
  3205. /*[IF*/
  3206. if((_wa)!=((void*)(NULL))){
  3207. _i=(/*RF2*/(((T346*)_wa))->_upper/*12*/);
  3208. while (!((_i)==(0)))
  3209. {
  3210. _a=r346item(((T346*)_wa),_i);
  3211. _t=X52run_type((/*RF2*/(((T345*)_a))->_result_type/*28*/));
  3212. X52c_type_for_result_in(_t,((T0*)ms52_783104));
  3213. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  3214. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\137'));
  3215. r7append((T7*)(((T0*)ms52_783104)),X82to_string((/*RF2*/(((T345*)_a))->_name/*12*/)));
  3216. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\73'));
  3217. _i=(_i)-(1);
  3218. }
  3219. }
  3220. /*FI]*/
  3221. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\175'));
  3222. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  3223. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  3224. /*]*/
  3225. /*[IF*/
  3226. {/*AT*/r7copy((T7*)(((T0*)ms52_783104)),((T0*)ms14_993));
  3227. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  3228. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_7749));
  3229. r2append_in(_mem_id,((T0*)ms52_783104));
  3230. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms52_248));
  3231. r2append_in(_mem_id,((T0*)ms52_783104));
  3232. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms52_1600));
  3233. r2append_in(_mem_id,((T0*)ms52_783104));
  3234. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms52_936));
  3235. r325put_c_function((T325*)(oBC13cpp),((T0*)ms52_783104),((T0*)ms52_87312));
  3236. }
  3237. /*FI]*/
  3238. }
  3239.  
  3240.  
  3241. T0* r274base_class(T274* C){
  3242. T0* R=NULL;
  3243. T0* _bcn=NULL;
  3244. _bcn=r274base_class_name(C);
  3245. /*[IF*/
  3246. if((_bcn)!=((void*)(NULL))){
  3247. R=r61base_class(((T61*)_bcn));
  3248. }
  3249. else{
  3250. /*[IRF3.6append*/{T0* b1=((T0*)ms52_36693);
  3251. r7append((T7*)(oBC66explanation),b1);
  3252. }/*]*/
  3253. r66add_type((T0*)C,((T0*)ms14_46));
  3254. r66print_as_fatal_error((T66*)(oBC13eh));
  3255. }
  3256. /*FI]*/
  3257. return R;
  3258. }
  3259.  
  3260.  
  3261. T0* r274look_up_for(T274* C,T0* a1,T0* a2){
  3262. T0* R=NULL;
  3263. R=r51look_up_for((T51*)(r274base_class(C)),a1,a2);
  3264. return R;
  3265. }
  3266.  
  3267.  
  3268. T2 r274c_sizeof(T274* C){
  3269. T2 R=0;
  3270. R=r50c_sizeof((T50*)(r274run_class(C)));
  3271. return R;
  3272. }
  3273.  
  3274.  
  3275. T6 r274has_creation(T274* C,T0* a1){
  3276. T6 R=0;
  3277. R=r51has_creation((T51*)(r274base_class(C)),a1);
  3278. return R;
  3279. }
  3280.  
  3281.  
  3282. T6 r274need_c_struct(T274* C){
  3283. T6 R=0;
  3284. /*[IF*/
  3285. if(X52is_expanded((/*RF2*/(C)->_mapped/*16*/))){
  3286. R=X52need_c_struct((/*RF2*/(C)->_mapped/*16*/));
  3287. }
  3288. else{
  3289. R=(r50writable_attributes((T50*)(r274run_class(C))))!=((void*)(NULL));
  3290. }
  3291. /*FI]*/
  3292. return R;
  3293. }
  3294.  
  3295.  
  3296. void r274mapping_cast(T274* C){
  3297. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_15456)))))->_count)=(0);
  3298. /*]*/
  3299. r7extend((T7*)(((T0*)ms52_15456)),((T3)'\50'));
  3300. r274c_type_for_target_in(C,((T0*)ms52_15456));
  3301. r7extend((T7*)(((T0*)ms52_15456)),((T3)'\51'));
  3302. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_15456));
  3303. /*]*/
  3304. }
  3305.  
  3306.  
  3307. T0* r274compute_mark(T0* a1){
  3308. T0* R=NULL;
  3309. r7copy((T7*)(((T0*)ms52_783104)),((T0*)ms14_10720));
  3310. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  3311. r7append((T7*)(((T0*)ms52_783104)),a1);
  3312. R=((/*UT*/(void)((T21*)(r274string_aliaser()))),r21item(((T0*)ms52_783104)));
  3313. return R;
  3314. }
  3315.  
  3316.  
  3317. T0* r274actual_reference(T274* C,T0* a1){
  3318. T0* R=NULL;
  3319. T68 _sp={NULL,0};
  3320. {T68 se_tmp0;
  3321. _sp=(*(se_tmp0=X52start_position(a1),&se_tmp0));
  3322. }
  3323. /*[IF*/
  3324. if(X52is_expanded((/*RF2*/(C)->_mapped/*16*/))){
  3325. {T389*n=((T389*)malloc(sizeof(*n))/*24*/);
  3326. *n=M389;
  3327. r389from_expanded(n,_sp,(/*RF2*/(C)->_mapped/*16*/));
  3328. R=((T0*)n);
  3329. }
  3330. }
  3331. else{
  3332. R=(/*RF2*/(C)->_mapped/*16*/);
  3333. }
  3334. /*FI]*/
  3335. return R;
  3336. }
  3337.  
  3338.  
  3339. T6 r274is_a_in(T274* C,T0* a1,T0* a2){
  3340. T6 R=0;
  3341. T0* _ct=NULL;
  3342. T0* _t2=NULL;
  3343. T0* _t1=NULL;
  3344. /*[IF*/
  3345. if(((/*RF2*/(C)->_written_mark/*12*/))==((void*)(X52written_mark(a1)))){
  3346. R=1;
  3347. }
  3348. else{
  3349. _ct=(/*RF2*/(((T50*)a2))->_current_type/*0*/);
  3350. _t1=r274to_runnable(C,_ct);
  3351. _t2=X52to_runnable(a1,_ct);
  3352. /*[IF*/
  3353. if((X52run_time_mark(_t1))==((void*)(X52run_time_mark(_t2)))){
  3354. R=1;
  3355. }
  3356. else{
  3357. R=X52is_a(_t1,_t2);
  3358. }
  3359. /*FI]*/
  3360. }
  3361. /*FI]*/
  3362. return R;
  3363. }
  3364.  
  3365.  
  3366. void r274standard_c_typedef(T274* C){
  3367. T2 _mem_id=0;
  3368. _mem_id=r274id(C);
  3369. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_783104)))))->_count)=(0);
  3370. /*]*/
  3371. /*[IF*/
  3372. if(r274need_c_struct(C)){
  3373. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_6448));
  3374. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_5495));
  3375. r7extend((T7*)(((T0*)ms52_783104)),((T3)'S'));
  3376. r2append_in(_mem_id,((T0*)ms52_783104));
  3377. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  3378. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  3379. r2append_in(_mem_id,((T0*)ms52_783104));
  3380. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  3381. }
  3382.  else if(r274is_dummy_expanded(C)){
  3383. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_6448));
  3384. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_993));
  3385. r7extend((T7*)(((T0*)ms52_783104)),((T3)'\40'));
  3386. r7extend((T7*)(((T0*)ms52_783104)),((T3)'T'));
  3387. r2append_in(_mem_id,((T0*)ms52_783104));
  3388. r7append((T7*)(((T0*)ms52_783104)),((T0*)ms14_138));
  3389. }
  3390. /*AF*//*FI]*/
  3391. /*[IRF3.5put_string*/r48put_string(((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/))),((T0*)ms52_783104));
  3392. /*]*/
  3393. }
  3394.  
  3395.  
  3396. T6 r274is_native_array(T274* C){
  3397. T6 R=0;
  3398. T0* _tna=NULL;
  3399. _tna=NULL;
  3400. R=(_tna)!=((void*)(NULL));
  3401. return R;
  3402. }
  3403.  
  3404.  
  3405. T6 r274is_boolean(T274* C){
  3406. T6 R=0;
  3407. R=X52is_boolean((/*RF2*/(C)->_mapped/*16*/));
  3408. return R;
  3409. }
  3410.  
  3411.  
  3412. T6 r274is_a(T274* C,T0* a1){
  3413. T6 R=0;
  3414. R=X52is_a((/*RF2*/(C)->_mapped/*16*/),a1);
  3415. /*[IF*/
  3416. if(!(R)){
  3417. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC66explanation))))->_count)=(0);
  3418. /*]*/
  3419. /*[IRF3.3clear*/((((T67*)((T67*)(oBC66positions))))->_upper)=(-(1));
  3420. /*]*/
  3421. /*]*/
  3422. r66add_type((T0*)C,((T0*)ms14_17460));
  3423. r66add_type(a1,((T0*)ms14_46));
  3424. }
  3425. /*FI]*/
  3426. return R;
  3427. }
  3428.  
  3429.  
  3430. T6 r274is_generic(T274* C){
  3431. T6 R=0;
  3432. R=X52is_generic((/*RF2*/(C)->_mapped/*16*/));
  3433. return R;
  3434. }
  3435.  
  3436.  
  3437. void r274make(T274* C,T68 a1,T0* a2){
  3438. (/*SFN*/C->_start_position)=a1;
  3439. (/*SFN*/C->_mapped)=a2;
  3440. (/*SFN*/C->_written_mark)=r274compute_mark(X52written_mark((/*RF2*/(C)->_mapped/*16*/)));
  3441. }
  3442.  
  3443.  
  3444. T6 r274is_real(T274* C){
  3445. T6 R=0;
  3446. R=X52is_real((/*RF2*/(C)->_mapped/*16*/));
  3447. return R;
  3448. }
  3449.  
  3450.  
  3451. T6 r274is_user_expanded(T274* C){
  3452. T6 R=0;
  3453. /*[IF*/
  3454. if(X52is_basic_eiffel_expanded((/*RF2*/(C)->_mapped/*16*/))){
  3455. }
  3456. else{
  3457. R=1;
  3458. }
  3459. /*FI]*/
  3460. return R;
  3461. }
  3462.  
  3463.  
  3464. T6 r274is_integer(T274* C){
  3465. T6 R=0;
  3466. R=X52is_integer((/*RF2*/(C)->_mapped/*16*/));
  3467. return R;
  3468. }
  3469.  
  3470.  
  3471. void r274standard_gc_define2_for_expanded(T274* C){
  3472. T2 _rcid=0;
  3473. T0* _rc=NULL;
  3474. _rc=r274run_class(C);
  3475. /*[IF*/
  3476. if(r50gc_mark_to_follow(((T50*)_rc))){
  3477. _rcid=(/*RF2*/(((T50*)_rc))->_id/*4*/);
  3478. r7copy((T7*)(((T0*)ms52_783104a)),((T0*)ms14_1736a));
  3479. r7extend((T7*)(((T0*)ms52_783104a)),((T3)'\40'));
  3480. r274gc_mark_in(C,((T0*)ms52_783104a));
  3481. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_248aa));
  3482. r2append_in(_rcid,((T0*)ms52_783104a));
  3483. r7append((T7*)(((T0*)ms52_783104a)),((T0*)ms52_582a));
  3484. /*[IRF3.3clear*/((((T7*)((T7*)(((T0*)ms52_3073536)))))->_count)=(0);
  3485. /*]*/
  3486. r50gc_mark_fixed_size(((T50*)_rc),1,((T0*)ms52_3073536));
  3487. r325put_c_function((T325*)(oBC13cpp),((T0*)ms52_783104a),((T0*)ms52_3073536));
  3488. }
  3489. /*FI]*/
  3490. }
  3491.  
  3492.  
  3493. void r274from_other(T274* C,T0* a1,T0* a2){
  3494. (/*SFN*/C->_start_position)=(/*RF2*/(((T274*)a1))->_start_position/*4*/);
  3495. (/*SFN*/C->_written_mark)=(/*RF2*/(((T274*)a1))->_written_mark/*12*/);
  3496. (/*SFN*/C->_mapped)=a2;
  3497. /*[IF*/
  3498. if(X52is_expanded((/*RF2*/(C)->_mapped/*16*/))){
  3499. (/*SFN*/C->_run_time_mark)=X52run_time_mark((/*RF2*/(C)->_mapped/*16*/));
  3500. (/*SFN*/C->_run_type)=(/*RF2*/(C)->_mapped/*16*/);
  3501. }
  3502. else{
  3503. (/*SFN*/C->_run_time_mark)=r274compute_mark(X52run_time_mark((/*RF2*/(C)->_mapped/*16*/)));
  3504. (/*SFN*/C->_run_type)=((T0*)(C));
  3505. }
  3506. /*FI]*/
  3507. }
  3508.  
  3509.  
  3510. void r274c_initialize_in(T274* C,T0* a1){
  3511. /*[IF*/
  3512. if(r274is_basic_eiffel_expanded(C)){
  3513. X52c_initialize_in((/*RF2*/(C)->_run_type/*24*/),a1);
  3514. }
  3515. else{
  3516. /*[IF*/
  3517. if(r274need_c_struct(C)){
  3518. r50c_object_model_in((T50*)(r274run_class(C)),a1);
  3519. }
  3520. else{
  3521. r7extend(((T7*)a1),((T3)'0'));
  3522. }
  3523. /*FI]*/
  3524. }
  3525. /*FI]*/
  3526. }
  3527.  
  3528.  
  3529. T0* r274smallest_ancestor(T274* C,T0* a1){
  3530. T0* R=NULL;
  3531. /*[IF*/
  3532. if(((/*RF2*/(C)->_run_time_mark/*20*/))==((void*)(X52run_time_mark(a1)))){
  3533. R=(/*RF2*/(C)->_run_type/*24*/);
  3534. }
  3535. else{
  3536. R=X52run_type(X52smallest_ancestor((/*RF2*/(C)->_mapped/*16*/),a1));
  3537. }
  3538. /*FI]*/
  3539. return R;
  3540. }
  3541.  
  3542.  
  3543. T0* r274string_aliaser(void){
  3544. if(fBC13string_aliaser==0){fBC13string_aliaser=1;{
  3545. {T21*n=((T21*)malloc(1));
  3546. oBC13string_aliaser=((T0*)n);
  3547. /*[IRF3.2make*//*[IRF3.6add1*/{T0* b1=((T0*)ms15_696);
  3548. r23put((T23*)(oBC21memory),b1,b1);
  3549. }/*]*/
  3550. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1915);
  3551. r23put((T23*)(oBC21memory),b1,b1);
  3552. }/*]*/
  3553. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_669);
  3554. r23put((T23*)(oBC21memory),b1,b1);
  3555. }/*]*/
  3556. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1980);
  3557. r23put((T23*)(oBC21memory),b1,b1);
  3558. }/*]*/
  3559. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9234);
  3560. r23put((T23*)(oBC21memory),b1,b1);
  3561. }/*]*/
  3562. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6405);
  3563. r23put((T23*)(oBC21memory),b1,b1);
  3564. }/*]*/
  3565. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12529);
  3566. r23put((T23*)(oBC21memory),b1,b1);
  3567. }/*]*/
  3568. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9801);
  3569. r23put((T23*)(oBC21memory),b1,b1);
  3570. }/*]*/
  3571. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16393);
  3572. r23put((T23*)(oBC21memory),b1,b1);
  3573. }/*]*/
  3574. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12550);
  3575. r23put((T23*)(oBC21memory),b1,b1);
  3576. }/*]*/
  3577. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_4728);
  3578. r23put((T23*)(oBC21memory),b1,b1);
  3579. }/*]*/
  3580. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_10740);
  3581. r23put((T23*)(oBC21memory),b1,b1);
  3582. }/*]*/
  3583. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12030);
  3584. r23put((T23*)(oBC21memory),b1,b1);
  3585. }/*]*/
  3586. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_14817);
  3587. r23put((T23*)(oBC21memory),b1,b1);
  3588. }/*]*/
  3589. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6307);
  3590. r23put((T23*)(oBC21memory),b1,b1);
  3591. }/*]*/
  3592. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6643);
  3593. r23put((T23*)(oBC21memory),b1,b1);
  3594. }/*]*/
  3595. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12595);
  3596. r23put((T23*)(oBC21memory),b1,b1);
  3597. }/*]*/
  3598. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_5508);
  3599. r23put((T23*)(oBC21memory),b1,b1);
  3600. }/*]*/
  3601. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_17448);
  3602. r23put((T23*)(oBC21memory),b1,b1);
  3603. }/*]*/
  3604. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1216);
  3605. r23put((T23*)(oBC21memory),b1,b1);
  3606. }/*]*/
  3607. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7928);
  3608. r23put((T23*)(oBC21memory),b1,b1);
  3609. }/*]*/
  3610. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6776);
  3611. r23put((T23*)(oBC21memory),b1,b1);
  3612. }/*]*/
  3613. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12804);
  3614. r23put((T23*)(oBC21memory),b1,b1);
  3615. }/*]*/
  3616. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1168);
  3617. r23put((T23*)(oBC21memory),b1,b1);
  3618. }/*]*/
  3619. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7576);
  3620. r23put((T23*)(oBC21memory),b1,b1);
  3621. }/*]*/
  3622. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_4956);
  3623. r23put((T23*)(oBC21memory),b1,b1);
  3624. }/*]*/
  3625. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16692);
  3626. r23put((T23*)(oBC21memory),b1,b1);
  3627. }/*]*/
  3628. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19124);
  3629. r23put((T23*)(oBC21memory),b1,b1);
  3630. }/*]*/
  3631. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_921);
  3632. r23put((T23*)(oBC21memory),b1,b1);
  3633. }/*]*/
  3634. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_10680);
  3635. r23put((T23*)(oBC21memory),b1,b1);
  3636. }/*]*/
  3637. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_64);
  3638. r23put((T23*)(oBC21memory),b1,b1);
  3639. }/*]*/
  3640. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_368);
  3641. r23put((T23*)(oBC21memory),b1,b1);
  3642. }/*]*/
  3643. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_61);
  3644. r23put((T23*)(oBC21memory),b1,b1);
  3645. }/*]*/
  3646. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_246);
  3647. r23put((T23*)(oBC21memory),b1,b1);
  3648. }/*]*/
  3649. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_62);
  3650. r23put((T23*)(oBC21memory),b1,b1);
  3651. }/*]*/
  3652. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9408);
  3653. r23put((T23*)(oBC21memory),b1,b1);
  3654. }/*]*/
  3655. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_242);
  3656. r23put((T23*)(oBC21memory),b1,b1);
  3657. }/*]*/
  3658. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_60);
  3659. r23put((T23*)(oBC21memory),b1,b1);
  3660. }/*]*/
  3661. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_45);
  3662. r23put((T23*)(oBC21memory),b1,b1);
  3663. }/*]*/
  3664. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_42);
  3665. r23put((T23*)(oBC21memory),b1,b1);
  3666. }/*]*/
  3667. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_216);
  3668. r23put((T23*)(oBC21memory),b1,b1);
  3669. }/*]*/
  3670. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1011);
  3671. r23put((T23*)(oBC21memory),b1,b1);
  3672. }/*]*/
  3673. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_450);
  3674. r23put((T23*)(oBC21memory),b1,b1);
  3675. }/*]*/
  3676. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8211);
  3677. r23put((T23*)(oBC21memory),b1,b1);
  3678. }/*]*/
  3679. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_43);
  3680. r23put((T23*)(oBC21memory),b1,b1);
  3681. }/*]*/
  3682. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_94);
  3683. r23put((T23*)(oBC21memory),b1,b1);
  3684. }/*]*/
  3685. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_552);
  3686. r23put((T23*)(oBC21memory),b1,b1);
  3687. }/*]*/
  3688. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_564);
  3689. r23put((T23*)(oBC21memory),b1,b1);
  3690. }/*]*/
  3691. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_47);
  3692. r23put((T23*)(oBC21memory),b1,b1);
  3693. }/*]*/
  3694. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_188);
  3695. r23put((T23*)(oBC21memory),b1,b1);
  3696. }/*]*/
  3697. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_35);
  3698. r23put((T23*)(oBC21memory),b1,b1);
  3699. }/*]*/
  3700. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1035a);
  3701. r23put((T23*)(oBC21memory),b1,b1);
  3702. }/*]*/
  3703. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11424);
  3704. r23put((T23*)(oBC21memory),b1,b1);
  3705. }/*]*/
  3706. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2600);
  3707. r23put((T23*)(oBC21memory),b1,b1);
  3708. }/*]*/
  3709. r21add2(((T0*)ms15_22524));
  3710. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6702);
  3711. r23put((T23*)(oBC21memory),b1,b1);
  3712. }/*]*/
  3713. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11776);
  3714. r23put((T23*)(oBC21memory),b1,b1);
  3715. }/*]*/
  3716. r21add2(((T0*)ms15_29246));
  3717. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13419);
  3718. r23put((T23*)(oBC21memory),b1,b1);
  3719. }/*]*/
  3720. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2765a);
  3721. r23put((T23*)(oBC21memory),b1,b1);
  3722. }/*]*/
  3723. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1644);
  3724. r23put((T23*)(oBC21memory),b1,b1);
  3725. }/*]*/
  3726. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19294);
  3727. r23put((T23*)(oBC21memory),b1,b1);
  3728. }/*]*/
  3729. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1772);
  3730. r23put((T23*)(oBC21memory),b1,b1);
  3731. }/*]*/
  3732. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15070);
  3733. r23put((T23*)(oBC21memory),b1,b1);
  3734. }/*]*/
  3735. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15570);
  3736. r23put((T23*)(oBC21memory),b1,b1);
  3737. }/*]*/
  3738. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27034);
  3739. r23put((T23*)(oBC21memory),b1,b1);
  3740. }/*]*/
  3741. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15190);
  3742. r23put((T23*)(oBC21memory),b1,b1);
  3743. }/*]*/
  3744. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15890);
  3745. r23put((T23*)(oBC21memory),b1,b1);
  3746. }/*]*/
  3747. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19151);
  3748. r23put((T23*)(oBC21memory),b1,b1);
  3749. }/*]*/
  3750. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13491);
  3751. r23put((T23*)(oBC21memory),b1,b1);
  3752. }/*]*/
  3753. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_28490);
  3754. r23put((T23*)(oBC21memory),b1,b1);
  3755. }/*]*/
  3756. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8750);
  3757. r23put((T23*)(oBC21memory),b1,b1);
  3758. }/*]*/
  3759. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_19437);
  3760. r23put((T23*)(oBC21memory),b1,b1);
  3761. }/*]*/
  3762. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22824a);
  3763. r23put((T23*)(oBC21memory),b1,b1);
  3764. }/*]*/
  3765. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_23829);
  3766. r23put((T23*)(oBC21memory),b1,b1);
  3767. }/*]*/
  3768. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27272);
  3769. r23put((T23*)(oBC21memory),b1,b1);
  3770. }/*]*/
  3771. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_10528);
  3772. r23put((T23*)(oBC21memory),b1,b1);
  3773. }/*]*/
  3774. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13707);
  3775. r23put((T23*)(oBC21memory),b1,b1);
  3776. }/*]*/
  3777. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6846);
  3778. r23put((T23*)(oBC21memory),b1,b1);
  3779. }/*]*/
  3780. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1664);
  3781. r23put((T23*)(oBC21memory),b1,b1);
  3782. }/*]*/
  3783. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2760);
  3784. r23put((T23*)(oBC21memory),b1,b1);
  3785. }/*]*/
  3786. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2730a);
  3787. r23put((T23*)(oBC21memory),b1,b1);
  3788. }/*]*/
  3789. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22248);
  3790. r23put((T23*)(oBC21memory),b1,b1);
  3791. }/*]*/
  3792. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22788);
  3793. r23put((T23*)(oBC21memory),b1,b1);
  3794. }/*]*/
  3795. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_30660);
  3796. r23put((T23*)(oBC21memory),b1,b1);
  3797. }/*]*/
  3798. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13995);
  3799. r23put((T23*)(oBC21memory),b1,b1);
  3800. }/*]*/
  3801. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_432);
  3802. r23put((T23*)(oBC21memory),b1,b1);
  3803. }/*]*/
  3804. r21add2(((T0*)ms15_22596));
  3805. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_60104);
  3806. r23put((T23*)(oBC21memory),b1,b1);
  3807. }/*]*/
  3808. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_24960);
  3809. r23put((T23*)(oBC21memory),b1,b1);
  3810. }/*]*/
  3811. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_34432);
  3812. r23put((T23*)(oBC21memory),b1,b1);
  3813. }/*]*/
  3814. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11144);
  3815. r23put((T23*)(oBC21memory),b1,b1);
  3816. }/*]*/
  3817. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_18964);
  3818. r23put((T23*)(oBC21memory),b1,b1);
  3819. }/*]*/
  3820. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1724);
  3821. r23put((T23*)(oBC21memory),b1,b1);
  3822. }/*]*/
  3823. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1744);
  3824. r23put((T23*)(oBC21memory),b1,b1);
  3825. }/*]*/
  3826. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2765);
  3827. r23put((T23*)(oBC21memory),b1,b1);
  3828. }/*]*/
  3829. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_6762);
  3830. r23put((T23*)(oBC21memory),b1,b1);
  3831. }/*]*/
  3832. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1656);
  3833. r23put((T23*)(oBC21memory),b1,b1);
  3834. }/*]*/
  3835. r21add2(((T0*)ms15_60016));
  3836. r21add2(((T0*)ms15_26880));
  3837. r21add2(((T0*)ms15_33240));
  3838. r21add2(((T0*)ms15_21624));
  3839. r21add2(((T0*)ms15_60060));
  3840. r21add2(((T0*)ms15_26908));
  3841. r21add2(((T0*)ms15_33270));
  3842. r21add2(((T0*)ms15_21648));
  3843. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_17886);
  3844. r23put((T23*)(oBC21memory),b1,b1);
  3845. }/*]*/
  3846. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22824);
  3847. r23put((T23*)(oBC21memory),b1,b1);
  3848. }/*]*/
  3849. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_21192);
  3850. r23put((T23*)(oBC21memory),b1,b1);
  3851. }/*]*/
  3852. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2785);
  3853. r23put((T23*)(oBC21memory),b1,b1);
  3854. }/*]*/
  3855. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11496);
  3856. r23put((T23*)(oBC21memory),b1,b1);
  3857. }/*]*/
  3858. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_53940);
  3859. r23put((T23*)(oBC21memory),b1,b1);
  3860. }/*]*/
  3861. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1035);
  3862. r23put((T23*)(oBC21memory),b1,b1);
  3863. }/*]*/
  3864. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2440);
  3865. r23put((T23*)(oBC21memory),b1,b1);
  3866. }/*]*/
  3867. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2445);
  3868. r23put((T23*)(oBC21memory),b1,b1);
  3869. }/*]*/
  3870. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_32730);
  3871. r23put((T23*)(oBC21memory),b1,b1);
  3872. }/*]*/
  3873. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12744);
  3874. r23put((T23*)(oBC21memory),b1,b1);
  3875. }/*]*/
  3876. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13662);
  3877. r23put((T23*)(oBC21memory),b1,b1);
  3878. }/*]*/
  3879. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8547);
  3880. r23put((T23*)(oBC21memory),b1,b1);
  3881. }/*]*/
  3882. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8505);
  3883. r23put((T23*)(oBC21memory),b1,b1);
  3884. }/*]*/
  3885. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9436);
  3886. r23put((T23*)(oBC21memory),b1,b1);
  3887. }/*]*/
  3888. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_14193);
  3889. r23put((T23*)(oBC21memory),b1,b1);
  3890. }/*]*/
  3891. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12915a);
  3892. r23put((T23*)(oBC21memory),b1,b1);
  3893. }/*]*/
  3894. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12915);
  3895. r23put((T23*)(oBC21memory),b1,b1);
  3896. }/*]*/
  3897. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_34528);
  3898. r23put((T23*)(oBC21memory),b1,b1);
  3899. }/*]*/
  3900. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13752);
  3901. r23put((T23*)(oBC21memory),b1,b1);
  3902. }/*]*/
  3903. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11336);
  3904. r23put((T23*)(oBC21memory),b1,b1);
  3905. }/*]*/
  3906. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_26156);
  3907. r23put((T23*)(oBC21memory),b1,b1);
  3908. }/*]*/
  3909. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_11376);
  3910. r23put((T23*)(oBC21memory),b1,b1);
  3911. }/*]*/
  3912. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27580);
  3913. r23put((T23*)(oBC21memory),b1,b1);
  3914. }/*]*/
  3915. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_33990);
  3916. r23put((T23*)(oBC21memory),b1,b1);
  3917. }/*]*/
  3918. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27443);
  3919. r23put((T23*)(oBC21memory),b1,b1);
  3920. }/*]*/
  3921. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_40358);
  3922. r23put((T23*)(oBC21memory),b1,b1);
  3923. }/*]*/
  3924. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_25584);
  3925. r23put((T23*)(oBC21memory),b1,b1);
  3926. }/*]*/
  3927. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7380);
  3928. r23put((T23*)(oBC21memory),b1,b1);
  3929. }/*]*/
  3930. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2730);
  3931. r23put((T23*)(oBC21memory),b1,b1);
  3932. }/*]*/
  3933. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7530);
  3934. r23put((T23*)(oBC21memory),b1,b1);
  3935. }/*]*/
  3936. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13977);
  3937. r23put((T23*)(oBC21memory),b1,b1);
  3938. }/*]*/
  3939. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_14175);
  3940. r23put((T23*)(oBC21memory),b1,b1);
  3941. }/*]*/
  3942. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16970);
  3943. r23put((T23*)(oBC21memory),b1,b1);
  3944. }/*]*/
  3945. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_8820);
  3946. r23put((T23*)(oBC21memory),b1,b1);
  3947. }/*]*/
  3948. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7326);
  3949. r23put((T23*)(oBC21memory),b1,b1);
  3950. }/*]*/
  3951. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22716);
  3952. r23put((T23*)(oBC21memory),b1,b1);
  3953. }/*]*/
  3954. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_12978);
  3955. r23put((T23*)(oBC21memory),b1,b1);
  3956. }/*]*/
  3957. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16770);
  3958. r23put((T23*)(oBC21memory),b1,b1);
  3959. }/*]*/
  3960. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_16850);
  3961. r23put((T23*)(oBC21memory),b1,b1);
  3962. }/*]*/
  3963. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9051);
  3964. r23put((T23*)(oBC21memory),b1,b1);
  3965. }/*]*/
  3966. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_21300);
  3967. r23put((T23*)(oBC21memory),b1,b1);
  3968. }/*]*/
  3969. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_56720);
  3970. r23put((T23*)(oBC21memory),b1,b1);
  3971. }/*]*/
  3972. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1800);
  3973. r23put((T23*)(oBC21memory),b1,b1);
  3974. }/*]*/
  3975. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_2780);
  3976. r23put((T23*)(oBC21memory),b1,b1);
  3977. }/*]*/
  3978. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_27456);
  3979. r23put((T23*)(oBC21memory),b1,b1);
  3980. }/*]*/
  3981. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_15650);
  3982. r23put((T23*)(oBC21memory),b1,b1);
  3983. }/*]*/
  3984. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_9275);
  3985. r23put((T23*)(oBC21memory),b1,b1);
  3986. }/*]*/
  3987. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_58075);
  3988. r23put((T23*)(oBC21memory),b1,b1);
  3989. }/*]*/
  3990. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_22140);
  3991. r23put((T23*)(oBC21memory),b1,b1);
  3992. }/*]*/
  3993. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_13833);
  3994. r23put((T23*)(oBC21memory),b1,b1);
  3995. }/*]*/
  3996. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_7314);
  3997. r23put((T23*)(oBC21memory),b1,b1);
  3998. }/*]*/
  3999. /*[IRF3.6add1*/{T0* b1=((T0*)ms15_1608);
  4000. r23put((T23*)(oBC21memory),b1,b1);
  4001. }/*]*/
  4002. /*]*/
  4003. }
  4004. }}
  4005. return oBC13string_aliaser;
  4006. }
  4007.  
  4008.  
  4009. T6 r274is_double(T274* C){
  4010. T6 R=0;
  4011. R=X52is_double((/*RF2*/(C)->_mapped/*16*/));
  4012. return R;
  4013. }
  4014.  
  4015.  
  4016. T0* r274to_runnable(T274* C,T0* a1){
  4017. T0* R=NULL;
  4018. T0* _m=NULL;
  4019. /*[IF*/
  4020. if(((/*RF2*/(C)->_run_type/*24*/))==((void*)(C))){
  4021. R=((T0*)(C));
  4022. }
  4023.  else if(((/*RF2*/(C)->_run_type/*24*/))==((void*)((/*RF2*/(C)->_mapped/*16*/)))){
  4024. R=((T0*)(C));
  4025. }
  4026. else{
  4027. _m=X52to_runnable((/*RF2*/(C)->_mapped/*16*/),a1);
  4028. /*[IF*/
  4029. if((_m)==((void*)(NULL))){
  4030. r66add_position((/*RF2*/(C)->_start_position/*4*/));
  4031. r274fatal_error(((T0*)ms274_41652));
  4032. }
  4033. /*FI]*/
  4034. /*[IF*/
  4035. if(((/*RF2*/(C)->_run_type/*24*/))!=((void*)(NULL))){
  4036. {T274*n=((T274*)malloc(sizeof(*n))/*28*/);
  4037. *n=M274;
  4038. r274from_other(n,(T0*)C,X52run_type(_m));
  4039. R=((T0*)n);
  4040. }
  4041. }
  4042.  else if(X52is_expanded(_m)){
  4043. (/*SFN*/C->_run_type)=_m;
  4044. (/*SFN*/C->_run_time_mark)=X52run_time_mark(_m);
  4045. R=((T0*)(C));
  4046. }
  4047.  else if(((/*RF2*/(C)->_mapped/*16*/))==((void*)(X52run_type(_m)))){
  4048. (/*SFN*/C->_run_time_mark)=r274compute_mark(X52run_time_mark(_m));
  4049. (/*SFN*/C->_run_type)=((T0*)(C));
  4050. R=((T0*)(C));
  4051. }
  4052. else{
  4053. (/*SFN*/C->_run_time_mark)=r274compute_mark(X52run_time_mark(_m));
  4054. {T274*n=((T274*)malloc(sizeof(*n))/*28*/);
  4055. *n=M274;
  4056. r274from_other(n,(T0*)C,X52run_type(_m));
  4057. (/*SFN*/C->_run_type)=((T0*)n);
  4058. }
  4059. R=((T0*)(C));
  4060. }
  4061. /*FI]*/
  4062. r50set_at_run_time((T50*)(X52run_class((/*RF2*/(C)->_mapped/*16*/))));
  4063. r50set_at_run_time((T50*)(X52run_class((/*RF2*/(((T274*)R))->_run_type/*24*/))));
  4064. }
  4065. /*FI]*/
  4066. return R;
  4067. }
  4068.  
  4069.  
  4070. T6 r274is_pointer(T274* C){
  4071. T6 R=0;
  4072. R=X52is_pointer((/*RF2*/(C)->_mapped/*16*/));
  4073. return R;
  4074. }
  4075.  
  4076.  
  4077. void r274id_extra_information(T0* a1){
  4078. r48put_string(((T48*)a1),((T0*)ms52_9724));
  4079. /*[IF*/
  4080. /*AF*//*AE*/
  4081. r48put_string(((T48*)a1),((T0*)ms52_759));
  4082. /*FI]*/
  4083. }
  4084.  
  4085.  
  4086. void r274gc_mark_in(T274* C,T0* a1){
  4087. r7append(((T7*)a1),((T0*)ms14_8764));
  4088. r2append_in(r274id(C),a1);
  4089. }
  4090.  
  4091.  
  4092. void r274c_type_for_external_in(T274* C,T0* a1){
  4093. /*[IF*/
  4094. /*AF*//*AE*/
  4095. r274c_type_for_result_in(C,a1);
  4096. /*FI]*/
  4097. }
  4098.  
  4099.  
  4100. void r274c_type_for_argument_in(T274* C,T0* a1){
  4101. /*[IF*/
  4102. if(X52is_expanded((/*RF2*/(C)->_mapped/*16*/))){
  4103. X52c_type_for_argument_in((/*RF2*/(C)->_mapped/*16*/),a1);
  4104. }
  4105.  else if(r274is_dummy_expanded(C)){
  4106. r7append(((T7*)a1),((T0*)ms14_993));
  4107. }
  4108. else{
  4109. r7extend(((T7*)a1),((T3)'T'));
  4110. r2append_in(r274id(C),a1);
  4111. }
  4112. /*FI]*/
  4113. }
  4114.  
  4115.  
  4116. T0* r274run_class(T274* C){
  4117. T0* R=NULL;
  4118. R=r49run_class((/*RF2*/(C)->_run_type/*24*/));
  4119. return R;
  4120. }
  4121.  
  4122.  
  4123. T6 r274is_dummy_expanded(T274* C){
  4124. T6 R=0;
  4125. /*[IF*/
  4126. if(r274is_user_expanded(C)){
  4127. R=(r50writable_attributes((T50*)(r274run_class(C))))==((void*)(NULL));
  4128. }
  4129. /*FI]*/
  4130. return R;
  4131. }
  4132.  
  4133.  
  4134. void r274fatal_error(T0* a1){
  4135. /*[IRF3.6append*/{T0* b1=a1;
  4136. r7append((T7*)(oBC66explanation),b1);
  4137. }/*]*/
  4138. r66print_as_fatal_error((T66*)(oBC13eh));
  4139. }
  4140.  
  4141.  
  4142. void r274c_type_for_result_in(T274* C,T0* a1){
  4143. /*[IF*/
  4144. if(r274is_dummy_expanded(C)){
  4145. r7append(((T7*)a1),((T0*)ms14_993));
  4146. }
  4147. else{
  4148. r7extend(((T7*)a1),((T3)'T'));
  4149. r2append_in(r274id(C),a1);
  4150. }
  4151. /*FI]*/
  4152. }
  4153.  
  4154.  
  4155. void r274c_type_for_target_in(T274* C,T0* a1){
  4156. /*[IF*/
  4157. if(r274is_dummy_expanded(C)){
  4158. r7append(((T7*)a1),((T0*)ms14_993));
  4159. }
  4160. else{
  4161. r7extend(((T7*)a1),((T3)'T'));
  4162. r2append_in(r274id(C),a1);
  4163. r7extend(((T7*)a1),((T3)'\52'));
  4164. }
  4165. /*FI]*/
  4166. }
  4167.  
  4168.  
  4169. T0* r274expanded_initializer(T274* C){
  4170. T0* R=NULL;
  4171. R=r51expanded_initializer((T51*)(r274base_class(C)),(T0*)C);
  4172. return R;
  4173. }
  4174.  
  4175.  
  4176. T6 r274is_basic_eiffel_expanded(T274* C){
  4177. T6 R=0;
  4178. /*[IF*/
  4179. if(((/*RF2*/(C)->_run_type/*24*/))==((void*)((/*RF2*/(C)->_mapped/*16*/)))){
  4180. R=X52is_basic_eiffel_expanded((/*RF2*/(C)->_mapped/*16*/));
  4181. }
  4182. /*FI]*/
  4183. return R;
  4184. }
  4185.  
  4186.  
  4187. T6 r274stupid_switch(T274* C,T0* a1){
  4188. T6 R=0;
  4189. R=X52stupid_switch((/*RF2*/(C)->_mapped/*16*/),a1);
  4190. return R;
  4191. }
  4192.  
  4193.  
  4194. void r274demangling_in(T274* C,T0* a1){
  4195. /*[IF*/
  4196. /*AF*//*AE*/
  4197. r7extend(((T7*)a1),((T3)'E'));
  4198. /*FI]*/
  4199. r7extend(((T7*)a1),((T3)'\40'));
  4200. r7append(((T7*)a1),(/*RF2*/(C)->_run_time_mark/*20*/));
  4201. }
  4202.  
  4203.  
  4204. void r274c_initialize(T274* C){
  4205. /*[IF*/
  4206. if(r274is_basic_eiffel_expanded(C)){
  4207. X52c_initialize((/*RF2*/(C)->_run_type/*24*/));
  4208. }
  4209. else{
  4210. r274c_initialize_expanded(C);
  4211. }
  4212. /*FI]*/
  4213. }
  4214.  
  4215.  
  4216. T6 r274is_character(T274* C){
  4217. T6 R=0;
  4218. R=X52is_character((/*RF2*/(C)->_mapped/*16*/));
  4219. return R;
  4220. }
  4221.  
  4222.  
  4223. T0* r274base_class_name(T274* C){
  4224. T0* R=NULL;
  4225. R=X52base_class_name((/*RF2*/(C)->_mapped/*16*/));
  4226. return R;
  4227. }
  4228.  
  4229.  
  4230. void r274c_frame_descriptor(T274* C){
  4231. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'\45'));
  4232. /*[IF*/
  4233. /*AF*//*AE*/
  4234. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'E'));
  4235. /*FI]*/
  4236. r2append_in(r274id(C),oBC13c_frame_descriptor_format);
  4237. r7extend((T7*)(oBC13c_frame_descriptor_format),((T3)'\45'));
  4238. }
  4239.  
  4240.  
  4241. void r274c_initialize_expanded(T274* C){
  4242. T0* _rf=NULL;
  4243. T2 _i=0;
  4244. T0* _wa=NULL;
  4245. /*[IF*/
  4246. if(r274is_dummy_expanded(C)){
  4247. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  4248. T3 b1=((T3)'0');
  4249. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  4250. }/*]*/
  4251. /*]*/
  4252. }
  4253. else{
  4254. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  4255. T3 b1=((T3)'\173');
  4256. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  4257. }/*]*/
  4258. /*]*/
  4259. _wa=r50writable_attributes((T50*)(r274run_class(C)));
  4260. _i=(/*RF2*/(((T346*)_wa))->_upper/*12*/);
  4261. while (!((_i)==(0)))
  4262. {
  4263. _rf=r346item(((T346*)_wa),_i);
  4264. X52c_initialize((/*RF2*/(((T345*)_rf))->_result_type/*28*/));
  4265. _i=(_i)-(1);
  4266. /*[IF*/
  4267. if((_i)>(0)){
  4268. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  4269. T3 b1=((T3)'\54');
  4270. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  4271. }/*]*/
  4272. /*]*/
  4273. }
  4274. /*FI]*/
  4275. }
  4276. /*[IRF3.5put_character*//*[IRF3.6put_character*/{T48* C1=((T48*)((/*RF2*/((T325*)(oBC13cpp))->_current_out/*63*/)));
  4277. T3 b1=((T3)'\175');
  4278. putc(b1,((FILE*)((/*RF2*/(C1)->_output_stream/*4*/))));
  4279. }/*]*/
  4280. /*]*/
  4281. }
  4282. /*FI]*/
  4283. }
  4284.  
  4285.  
  4286. T6 r274is_bit(T274* C){
  4287. T6 R=0;
  4288. R=X52is_bit((/*RF2*/(C)->_mapped/*16*/));
  4289. return R;
  4290. }
  4291.  
  4292.  
  4293. T0* r291try_to_undefine_aux(T291* C,T0* a1,T0* a2){
  4294. T0* R=NULL;
  4295. {T287*n=((T287*)malloc(sizeof(*n))/*44*/);
  4296. *n=M287;
  4297. r287from_effective(n,a1,(/*RF2*/(C)->_arguments/*20*/),(/*RF2*/(C)->_result_type/*48*/),(/*RF2*/(C)->_require_assertion/*28*/),(/*RF2*/(C)->_ensure_assertion/*32*/),a2);
  4298. R=((T0*)n);
  4299. }
  4300. return R;
  4301. }
  4302.  
  4303.  
  4304. T0* r291try_to_undefine(T291* C,T0* a1,T0* a2){
  4305. T0* R=NULL;
  4306. T0* _fn2=NULL;
  4307. {T68 se_tmp0;
  4308. r66add_position((*(se_tmp0=X82start_position(a1),&se_tmp0)));
  4309. }
  4310. _fn2=r83feature_name((T83*)((/*RF2*/(C)->_names/*8*/)),X82to_key(a1));
  4311. /*[IF*/
  4312. if((_fn2)!=((void*)(NULL))){
  4313. X82undefine_in(_fn2,a2);
  4314. }
  4315. /*FI]*/
  4316. /*[IRF3.2cancel*//*[IRF3.3clear*/((((T7*)((T7*)(oBC66explanation))))->_count)=(0);
  4317. /*]*/
  4318. /*[IRF3.3clear*/((((T67*)((T67*)(oBC66positions))))->_upper)=(-(1));
  4319. /*]*/
  4320. /*]*/
  4321. R=r291try_to_undefine_aux(C,a1,a2);
  4322. /*[IF*/
  4323. if((R)!=((void*)(NULL))){
  4324. X284set_clients(R,(/*RF2*/(C)->_clients/*16*/));
  4325. r291merge_header_comments(C,R);
  4326. }
  4327. else{
  4328. r51fatal_undefine(((T51*)a2),a1);
  4329. }
  4330. /*FI]*/
  4331. return R;
  4332. }
  4333.  
  4334.  
  4335. void r291check_obsolete(T291* C,T68 a1){
  4336. /*[IF*/
  4337. if(((/*RF2*/(C)->_obsolete_mark/*24*/))!=((void*)(NULL))){
  4338. /*[IF*/
  4339. if(!((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/))){
  4340. r66add_position(a1);
  4341. /*[IRF3.6append*/{T0* b1=((T0*)ms90_19170);
  4342. r7append((T7*)(oBC66explanation),b1);
  4343. }/*]*/
  4344. /*[IRF3.6append*/{T0* b1=(/*RF2*/((T161*)((/*RF2*/(C)->_obsolete_mark/*24*/)))->_to_string/*12*/);
  4345. r7append((T7*)(oBC66explanation),b1);
  4346. }/*]*/
  4347. {T68 se_tmp0;
  4348. r66add_position((*(se_tmp0=r291start_position(C),&se_tmp0)));
  4349. }
  4350. r66print_as_warning((T66*)(oBC13eh));
  4351. }
  4352. /*FI]*/
  4353. }
  4354. /*FI]*/
  4355. }
  4356.  
  4357.  
  4358. T6 r291use_current(T291* C){
  4359. T6 R=0;
  4360. R=X288use_current((/*RF2*/(C)->_native/*40*/),(T0*)C);
  4361. return R;
  4362. }
  4363.  
  4364.  
  4365. T0* r291to_run_feature(T291* C,T0* a1,T0* a2){
  4366. T0* R=NULL;
  4367. {T333*n=((T333*)malloc(sizeof(*n))/*48*/);
  4368. *n=M333;
  4369. r333make(n,a1,a2,(T0*)C);
  4370. R=((T0*)n);
  4371. }
  4372. return R;
  4373. }
  4374.  
  4375.  
  4376. void r291error(T68 a1,T0* a2){
  4377. r66add_position(a1);
  4378. /*[IRF3.6append*/{T0* b1=a2;
  4379. r7append((T7*)(oBC66explanation),b1);
  4380. }/*]*/
  4381. r66print_as_error((T66*)(oBC13eh));
  4382. }
  4383.  
  4384.  
  4385. T0* r291external_c_name(T291* C){
  4386. T0* R=NULL;
  4387. /*[IF*/
  4388. if(((/*RF2*/(C)->_alias_string/*44*/))==((void*)(NULL))){
  4389. R=X82to_string(/*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/(C)->_names/*8*/))))->_first/*0*/)/*)*/);
  4390. }
  4391. else{
  4392. R=(/*RF2*/(C)->_alias_string/*44*/);
  4393. }
  4394. /*FI]*/
  4395. return R;
  4396. }
  4397.  
  4398.  
  4399. T6 r291is_not_mergeable_with(T291* C,T0* a1){
  4400. T6 R=0;
  4401. /*[IF*/
  4402. if(((/*RF2*/(C)->_result_type/*48*/))==((void*)(NULL))){
  4403. R=(X90result_type(a1))!=((void*)(NULL));
  4404. }
  4405. else{
  4406. R=(X90result_type(a1))==((void*)(NULL));
  4407. }
  4408. /*FI]*/
  4409. /*[IF*/
  4410. if(R){
  4411. /*[IRF3.6append*/{T0* b1=((T0*)ms90_64152);
  4412. r7append((T7*)(oBC66explanation),b1);
  4413. }/*]*/
  4414. }
  4415. else{
  4416. /*[IF*/
  4417. if(((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL))){
  4418. R=(X90arguments(a1))!=((void*)(NULL));
  4419. }
  4420. else{
  4421. R=(X90arguments(a1))==((void*)(NULL));
  4422. }
  4423. /*FI]*/
  4424. /*[IF*/
  4425. if(R){
  4426. /*[IRF3.6append*/{T0* b1=((T0*)ms90_82612);
  4427. r7append((T7*)(oBC66explanation),b1);
  4428. }/*]*/
  4429. }
  4430.  else if(((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL))){
  4431. }
  4432.  else if((/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)((/*RF2*/(C)->_arguments/*20*/)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)!=(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)(X90arguments(a1)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)){
  4433. /*[IRF3.6append*/{T0* b1=((T0*)ms90_66660);
  4434. r7append((T7*)(oBC66explanation),b1);
  4435. }/*]*/
  4436. R=1;
  4437. }
  4438. /*FI]*/
  4439. }
  4440. /*FI]*/
  4441. r291merge_header_comments(C,a1);
  4442. return R;
  4443. }
  4444.  
  4445.  
  4446. void r291set_header_comment(T291* C,T0* a1){
  4447. /*[IF*/
  4448. if(((a1)!=((void*)(NULL)))&&((/*(IRF4.6count*/r44count(((T44*)((/*RF2*/(((T81*)a1))->_list/*8*/))))/*)*/)>(1))){
  4449. (/*SFN*/C->_end_comment)=a1;
  4450. }
  4451. /*FI]*/
  4452. }
  4453.  
  4454.  
  4455. void r291set_rescue_compound(T291* C,T0* a1){
  4456. /*[IF*/
  4457. if((a1)!=((void*)(NULL))){
  4458. {T68 se_tmp0;
  4459. r66add_position((*(se_tmp0=r215start_position(((T215*)a1)),&se_tmp0)));
  4460. }
  4461. }
  4462. else{
  4463. {T68 se_tmp0;
  4464. r66add_position((*(se_tmp0=r291start_position(C),&se_tmp0)));
  4465. }
  4466. }
  4467. /*FI]*/
  4468. /*[IRF3.6append*/{T0* b1=((T0*)ms289_126054);
  4469. r7append((T7*)(oBC66explanation),b1);
  4470. }/*]*/
  4471. r66print_as_fatal_error((T66*)(oBC13eh));
  4472. }
  4473.  
  4474.  
  4475. void r291make_routine(T291* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
  4476. /*[IRF3.3make_e_feature*/((((T291*)(C)))->_names)=(a1);
  4477. /*]*/
  4478. (/*SFN*/C->_header_comment)=a4;
  4479. (/*SFN*/C->_arguments)=a2;
  4480. (/*SFN*/C->_obsolete_mark)=a3;
  4481. (/*SFN*/C->_require_assertion)=a5;
  4482. }
  4483.  
  4484.  
  4485. void r291make(T291* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5,T0* a6,T0* a7,T0* a8){
  4486. r291make_routine(C,a1,a2,a4,a5,a6);
  4487. (/*SFN*/C->_result_type)=a3;
  4488. r291make_external_routine(C,a7,a8);
  4489. }
  4490.  
  4491.  
  4492. void r291make_external_routine(T291* C,T0* a1,T0* a2){
  4493. (/*SFN*/C->_native)=a1;
  4494. (/*SFN*/C->_alias_string)=a2;
  4495. }
  4496.  
  4497.  
  4498. void r291add_into(T291* C,T0* a1){
  4499. T0* _fn=NULL;
  4500. T2 _i=0;
  4501. {T68 se_tmp0;
  4502. (/*SFN*/C->_base_class)=(/*RF2*/((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),1)),&se_tmp0)))._base_class/*0*/);
  4503. }
  4504. _i=1;
  4505. while (!((_i)>(r83count((T83*)((/*RF2*/(C)->_names/*8*/))))))
  4506. {
  4507. _fn=r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i);
  4508. /*[IF*/
  4509. if(r91has(((T91*)a1),X82to_key(_fn))){
  4510. _fn=/*SSFRF4*//*X90first_name*//*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/((T198*)(r91at(((T91*)a1),X82to_key(_fn))))->_names/*8*/))))->_first/*0*/)/*)*/;
  4511. {T68 se_tmp0;
  4512. r66add_position((*(se_tmp0=X82start_position(_fn),&se_tmp0)));
  4513. }
  4514. {T68 se_tmp0;
  4515. r66add_position((*(se_tmp0=X82start_position(r83item((T83*)((/*RF2*/(C)->_names/*8*/)),_i)),&se_tmp0)));
  4516. }
  4517. /*[IRF3.6append*/{T0* b1=((T0*)ms90_41470);
  4518. r7append((T7*)(oBC66explanation),b1);
  4519. }/*]*/
  4520. /*[IRF3.6append*/{T0* b1=X82to_string(_fn);
  4521. r7append((T7*)(oBC66explanation),b1);
  4522. }/*]*/
  4523. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  4524. r7append((T7*)(oBC66explanation),b1);
  4525. }/*]*/
  4526. r66print_as_error((T66*)(oBC13eh));
  4527. }
  4528. else{
  4529. r91put(((T91*)a1),(T0*)C,X82to_key(_fn));
  4530. }
  4531. /*FI]*/
  4532. _i=(_i)+(1);
  4533. }
  4534. }
  4535.  
  4536.  
  4537. T6 r291can_hide(T291* C,T0* a1,T0* a2){
  4538. T6 R=0;
  4539. /*[IF*/
  4540. if(((/*RF2*/(C)->_result_type/*48*/))!=((void*)(X90result_type(a1)))){
  4541. /*[IF*/
  4542. if((((/*RF2*/(C)->_result_type/*48*/))==((void*)(NULL)))||((X90result_type(a1))==((void*)(NULL)))){
  4543. {T68 se_tmp0;
  4544. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  4545. }
  4546. {T68 se_tmp0;
  4547. r291error((*(se_tmp0=r291start_position(C),&se_tmp0)),((T0*)ms90_64152));
  4548. }
  4549. }
  4550. /*FI]*/
  4551. }
  4552. /*FI]*/
  4553. /*[IF*/
  4554. if(((/*RF2*/(C)->_arguments/*20*/))!=((void*)(X90arguments(a1)))){
  4555. /*[IF*/
  4556. if((((/*RF2*/(C)->_arguments/*20*/))==((void*)(NULL)))||((X90arguments(a1))==((void*)(NULL)))){
  4557. {T68 se_tmp0;
  4558. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  4559. }
  4560. {T68 se_tmp0;
  4561. r291error((*(se_tmp0=r291start_position(C),&se_tmp0)),((T0*)ms90_82612));
  4562. }
  4563. }
  4564.  else if((/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)((/*RF2*/(C)->_arguments/*20*/)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)!=(/*(IRF4.6count*/(/*RF2*/(((T182*)((/*RF2*/((T178*)(X90arguments(a1)))->_flat_list/*8*/))))->_upper/*12*/)/*)*/)){
  4565. {T68 se_tmp0;
  4566. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  4567. }
  4568. {T68 se_tmp0;
  4569. r291error((*(se_tmp0=r291start_position(C),&se_tmp0)),((T0*)ms90_66660));
  4570. }
  4571. }
  4572. /*FI]*/
  4573. }
  4574. /*FI]*/
  4575. /*[IF*/
  4576. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  4577. /*[IF*/
  4578. if(((/*RF2*/(C)->_result_type/*48*/))!=((void*)(NULL))){
  4579. /*[IF*/
  4580. if(!(X52is_a_in((/*RF2*/(C)->_result_type/*48*/),X90result_type(a1),a2))){
  4581. /*[IRF3.6append*/{T0* b1=((T0*)ms90_51136);
  4582. r7append((T7*)(oBC66explanation),b1);
  4583. }/*]*/
  4584. /*[IRF3.6append*/{T0* b1=X52run_time_mark((/*RF2*/(((T50*)a2))->_current_type/*0*/));
  4585. r7append((T7*)(oBC66explanation),b1);
  4586. }/*]*/
  4587. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  4588. r7append((T7*)(oBC66explanation),b1);
  4589. }/*]*/
  4590. r66print_as_error((T66*)(oBC13eh));
  4591. }
  4592. /*FI]*/
  4593. }
  4594. /*FI]*/
  4595. }
  4596. /*FI]*/
  4597. /*[IF*/
  4598. if((/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0)){
  4599. /*[IF*/
  4600. if(((/*RF2*/(C)->_arguments/*20*/))!=((void*)(NULL))){
  4601. /*[IF*/
  4602. if(!(r178is_a_in((T178*)((/*RF2*/(C)->_arguments/*20*/)),X90arguments(a1),a2))){
  4603. {T68 se_tmp0;
  4604. r66add_position((*(se_tmp0=X90start_position(a1),&se_tmp0)));
  4605. }
  4606. {T68 se_tmp0;
  4607. r66add_position((*(se_tmp0=r291start_position(C),&se_tmp0)));
  4608. }
  4609. /*[IRF3.6append*/{T0* b1=((T0*)ms90_51136);
  4610. r7append((T7*)(oBC66explanation),b1);
  4611. }/*]*/
  4612. /*[IRF3.6append*/{T0* b1=X52run_time_mark((/*RF2*/(((T50*)a2))->_current_type/*0*/));
  4613. r7append((T7*)(oBC66explanation),b1);
  4614. }/*]*/
  4615. /*[IRF3.6append*/{T0* b1=((T0*)ms14_46);
  4616. r7append((T7*)(oBC66explanation),b1);
  4617. }/*]*/
  4618. r66print_as_error((T66*)(oBC13eh));
  4619. }
  4620. /*FI]*/
  4621. }
  4622. /*FI]*/
  4623. }
  4624. /*FI]*/
  4625. R=(/*(IRF4.9nb_errors*/(/*RF2*/((T66*)(oBC13eh))->_error_counter/*0*/)/*)*/)==(0);
  4626. /*[IF*/
  4627. if(R){
  4628. r291merge_header_comments(C,a1);
  4629. }
  4630. /*FI]*/
  4631. return R;
  4632. }
  4633.  
  4634.  
  4635. void r291merge_header_comments(T291* C,T0* a1){
  4636. /*[IF*/
  4637. if((/*RF2*/((T49*)(oBC13small_eiffel))->_short_flag/*5*/)){
  4638. /*[IF*/
  4639. if(((/*RF2*/(C)->_header_comment/*12*/))==((void*)(NULL))){
  4640. (/*SFN*/C->_header_comment)=/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/);
  4641. }
  4642.  else if((/*SSWARF2*//*X90header_comment*/(/*RF2*/(((T198*)a1))->_header_comment/*12*/))==((void*)(NULL))){
  4643. X90set_header_comment(a1,(/*RF2*/(C)->_header_comment/*12*/));
  4644. }
  4645. /*FI]*/
  4646. }
  4647. /*FI]*/
  4648. }
  4649.  
  4650.  
  4651. T68 r291start_position(T291* C){
  4652. T68 R={NULL,0};
  4653. {T68 se_tmp0;
  4654. R=(*(se_tmp0=X82start_position(/*(IRF4.6first_name*/(/*RF2*/(((T83*)((/*RF2*/(C)->_names/*8*/))))->_first/*0*/)/*)*/),&se_tmp0));
  4655. }
  4656. return R;
  4657. }
  4658.  
  4659.  
  4660. void r121compile_to_c_old(T121* C){
  4661. X104compile_to_c_old((/*RF2*/(C)->_target/*4*/));
  4662. /*[IF*/
  4663. {/*AT*//*SSPRF3*//*X139compile_to_c_old*/r139compile_to_c_old((T139*)((/*RF2*/(C)->_arguments/*8*/)));
  4664. }
  4665. /*FI]*/
  4666. }
  4667.  
  4668.  
  4669. T0* r121runnable_expression(T0* a1,T0* a2){
  4670. T0* R=NULL;
  4671. R=X104to_runnable(a1,a2);
  4672. /*[IF*/
  4673. if((R)==((void*)(NULL))){
  4674. {T68 se_tmp0;
  4675. r66add_position((*(se_tmp0=X104start_position(a1),&se_tmp0)));
  4676. }
  4677. r121fatal_error(((T0*)ms116_16290));
  4678. }
  4679. /*FI]*/
  4680. return R;
  4681. }
  4682.  
  4683.